diff --git a/configure b/configure
index 341eb59..4abd4c8 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,8 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for ndn-cpp 0.5.
+# Generated by GNU Autoconf 2.69 for ndn-cpp 0.2.
+#
+# Report bugs to <ndn-lib@lists.cs.ucla.edu>.
 #
 #
 # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
@@ -272,10 +274,11 @@
     $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
     $as_echo "$0: be upgraded to zsh 4.3.4 or later."
   else
-    $as_echo "$0: Please tell bug-autoconf@gnu.org about your system,
-$0: including any error possibly output before this
-$0: message. Then install a modern shell, or manually run
-$0: the script under such a shell if you do have one."
+    $as_echo "$0: Please tell bug-autoconf@gnu.org and
+$0: ndn-lib@lists.cs.ucla.edu about your system, including
+$0: any error possibly output before this message. Then
+$0: install a modern shell, or manually run the script
+$0: under such a shell if you do have one."
   fi
   exit 1
 fi
@@ -587,11 +590,12 @@
 # Identity of this package.
 PACKAGE_NAME='ndn-cpp'
 PACKAGE_TARNAME='ndn-cpp'
-PACKAGE_VERSION='0.5'
-PACKAGE_STRING='ndn-cpp 0.5'
-PACKAGE_BUGREPORT=''
+PACKAGE_VERSION='0.2'
+PACKAGE_STRING='ndn-cpp 0.2'
+PACKAGE_BUGREPORT='ndn-lib@lists.cs.ucla.edu'
 PACKAGE_URL='https://github.com/named-data/ndn-cpp'
 
+ac_unique_file="config.h.in"
 # Factoring default headers for most tests.
 ac_includes_default="\
 #include <stdio.h>
@@ -1379,7 +1383,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures ndn-cpp 0.5 to adapt to many kinds of systems.
+\`configure' configures ndn-cpp 0.2 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1449,7 +1453,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of ndn-cpp 0.5:";;
+     short | recursive ) echo "Configuration of ndn-cpp 0.2:";;
    esac
   cat <<\_ACEOF
 
@@ -1510,7 +1514,7 @@
 Use these variables to override the choices made by `configure' or to help
 it to find libraries and programs with nonstandard names/locations.
 
-Report bugs to the package provider.
+Report bugs to <ndn-lib@lists.cs.ucla.edu>.
 ndn-cpp home page: <https://github.com/named-data/ndn-cpp>.
 _ACEOF
 ac_status=$?
@@ -1574,7 +1578,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-ndn-cpp configure 0.5
+ndn-cpp configure 0.2
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1973,7 +1977,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by ndn-cpp $as_me 0.5, which was
+It was created by ndn-cpp $as_me 0.2, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -2321,7 +2325,6 @@
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 
-
 am__api_version='1.14'
 
 ac_aux_dir=
@@ -2837,7 +2840,7 @@
 
 # Define the identity of the package.
  PACKAGE='ndn-cpp'
- VERSION='0.5'
+ VERSION='0.2'
 
 
 # Some tools Automake needs.
@@ -2921,6 +2924,7 @@
   fi
 fi
 
+
 ac_config_headers="$ac_config_headers config.h"
 
 
@@ -18269,7 +18273,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by ndn-cpp $as_me 0.5, which was
+This file was extended by ndn-cpp $as_me 0.2, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -18329,14 +18333,14 @@
 Configuration commands:
 $config_commands
 
-Report bugs to the package provider.
+Report bugs to <ndn-lib@lists.cs.ucla.edu>.
 ndn-cpp home page: <https://github.com/named-data/ndn-cpp>."
 
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-ndn-cpp config.status 0.5
+ndn-cpp config.status 0.2
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff --git a/configure.ac b/configure.ac
index 28ea80f..fd9a589 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,8 +1,8 @@
-AC_INIT([ndn-cpp], [0.5], [],
-        [ndn-cpp], [https://github.com/named-data/ndn-cpp])
 AC_PREREQ([2.59])
+AC_INIT([ndn-cpp], [0.2], [ndn-lib@lists.cs.ucla.edu], [ndn-cpp], [https://github.com/named-data/ndn-cpp])
 AM_INIT_AUTOMAKE([1.10 -Wall no-define foreign])
 
+AC_CONFIG_SRCDIR([config.h.in])
 AC_CONFIG_HEADERS([config.h])
 AM_MAINTAINER_MODE
 AM_PROG_AR
diff --git a/libtool b/libtool
index ad8e0f5..162a36b 100755
--- a/libtool
+++ b/libtool
@@ -1,8 +1,8 @@
 #! /bin/sh
 
 # libtool - Provide generalized library-building support services.
-# Generated automatically by config.status (ndn-cpp) 0.5
-# Libtool was configured on host liger.remap.ucla.edu:
+# Generated automatically by config.status (ndn-cpp) 0.2
+# Libtool was configured on host Jeffs-MacBook-Pro.local:
 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
 #
 #   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
