Major rework of the directory structure and the entire build system.
 -Erik
diff --git a/Changelog b/Changelog
index 9ed6d58..2a778d6 100644
--- a/Changelog
+++ b/Changelog
@@ -52,8 +52,8 @@
 	    -- Fixed msh to support underscores in variable names.
 	    -- Fixed a sed problem with unsatisfied backrefs (the problem was
 		noted by Martin Bene).
-	    -- Removed BB_SH define entirely.  Now one simply picks the shell
-		or shells they want as BB_<foo> in Config.h
+	    -- Removed CONFIG_SH define entirely.  Now one simply picks the shell
+		or shells they want as CONFIG_<foo> in Config.h
 	    -- Fixed head to use ferror(3) to check for errors, not errno.
 	* Shu-Hao Chang <shuhao_chang@trend.com.tw>
 	    -- Fixed sed handling of multiple -e commands
@@ -62,10 +62,10 @@
 	* Jaspreet Singh <jsingh@somanetworks.com>
 	    -- Fixed both a segfault and cosmetic bug in route
 	* Erik Andersen
-	    -- Made the insmod options BB_FEATURE_NEW_MODULE_INTERFACE and 
-		BB_FEATURE_OLD_MODULE_INTERFACE mutually exclusive
+	    -- Made the insmod options CONFIG_FEATURE_NEW_MODULE_INTERFACE and 
+		CONFIG_FEATURE_OLD_MODULE_INTERFACE mutually exclusive
 	    -- xgetcwd.c now includes sys/param.h to ensure PATH_MAX is defined
-	    -- Fixed a potential segfault with lash + BB_FEATURE_CLEAN_UP
+	    -- Fixed a potential segfault with lash + CONFIG_FEATURE_CLEAN_UP
 	    -- Removed uint64_t from dos2unix, avoiding C lib compat. problems.
 	* Glenn McGrath
 	    -- Rewrite of tftp (commands match atftp, accepts -b, can use 
@@ -136,7 +136,7 @@
 	* Matt Kraai 
 	    -- Made tar read 20 512byte blocks at a time (like GNU tar)
 	    -- Allow msh.c assignments with the export and readonly commands.
-	    -- Added BB_FEATURE_DEVFS to enable devfs device names.
+	    -- Added CONFIG_FEATURE_DEVFS to enable devfs device names.
 	    -- Better devfs support
 	    -- Don't save/restore vi readonly flag if vi is compiled read-only.
 	    -- Reworked rdate option handling (is now smaller).
@@ -317,7 +317,7 @@
 	* Magnus Damm -- added a tftp applet  
 	* Magnus Damm -- powerpc support for busybox insmod.
 	* David Douthitt -- fixed a build error in df.c when 
-	    BB_FEATURE_HUMAN_READABLE was disabled
+	    CONFIG_FEATURE_HUMAN_READABLE was disabled
 	* John Beppu -- wrote autodocifier.pl, which will be used to auto-
 	    generate the documentation from the source code, making life
 	    much simpler for all.
@@ -424,7 +424,7 @@
 	* Mark Whitley -- Updates to style guide
 	* Mark Whitley -- Big cleanup in utility.c: style guide compliance,
 	    de-macro-ifying some variables and functions
-	* Erik Andersen -- ls now honors BB_FEATURE_AUTOWIDTH so it can find
+	* Erik Andersen -- ls now honors CONFIG_FEATURE_AUTOWIDTH so it can find
 	    the width and height of the console.
 	* Erik Andersen -- insmod now ignores -L and accepts the -o option.
 	* Erik Andersen -- updates so you can now select from the Makefile
@@ -440,7 +440,7 @@
 0.48
 
 	* Glenn McGrath -- tar now supports uncompressing tar files,
-	    define BB_FEATURE_TAR_GZIP to use the -z option.
+	    define CONFIG_FEATURE_TAR_GZIP to use the -z option.
 	* Matt Kraai -- fix all usage of TRUE and FALSE so all apps now
 	    return EXIT_SUCCESS or EXIT_FAILURE to the system.
 	    Now TRUE and FALSE are set to the C standard where TRUE=1.
@@ -472,7 +472,7 @@
 	    GNU-date compatible
 	* me -- Progress meter (optional) in wget
 	* Doolittle/me -- programs invoked by full path name take
-	    precedence over applets unless BB_FEATURE_SH_BUILTINS_ALWAYS_WIN
+	    precedence over applets unless CONFIG_FEATURE_SH_BUILTINS_ALWAYS_WIN
 	* Gaute B Strokkenes <gs234@cam.ac.uk> -- applets found using a
 	    binary search instead of linear search.  Much faster!
 	* new applets: cmp readlink
@@ -605,7 +605,7 @@
 0.45
 	* Now compiles vs libc5 (which can save lots of space for 
 	    embedded systems).
-	* Added BB_FEATURE_TRIVIAL_HELP which compiles out most all of the
+	* Added CONFIG_FEATURE_TRIVIAL_HELP which compiles out most all of the
 	    help messages (i.e --help).  Saves 17k over a full compile.
 	* Added cut and tr from minix, since due to the license change, 
 	    we can now use minix code.  Minix tr saves 4k. 
@@ -626,7 +626,7 @@
 	* Replaced the telnet implementation with one written by 
 	    Tomi Ollila <too@iki.fi> It works great and costs 3k.
 	* BusyBox sh (lash) now supports being used as a standalone shell.  When
-	    BB_FEATURE_SH_STANDALONE_SHELL is defined, all the busybox commands may
+	    CONFIG_FEATURE_SH_STANDALONE_SHELL is defined, all the busybox commands may
 	    be invoked as shell internals.  Best used when compiling staticly 
 	    (i.e. DOSTATIC=true)
 	* BusyBox sh (lash) internals now behave as expected wrt pipes 
@@ -678,7 +678,7 @@
 	* Fixed exit status for killall - Pavel Roskin
 	* Fixed 'swapon -a' and 'swapoff -a', which were broken.
 	* Fixed 'mount -a' so it works as expected.
-	* Implemented 'ls -R' (enabled by enabling BB_FEATURE_LS_RECURSIVE)
+	* Implemented 'ls -R' (enabled by enabling CONFIG_FEATURE_LS_RECURSIVE)
 	* Implemented "ping -s", fixed error messages and argument parsing -
 	    Pavel Roskin
 	* Syslogd will not go to background if "-n" is given. Better help
@@ -716,7 +716,7 @@
 	    saving a bunch of memory (kernel /proc support is not thin).  This
 	    is done by making use of some nice kernel patches I wrote up to
 	    support the features that busybox requires and that /proc usually
-	    provides.  To enable this, turn on BB_FEATURE_USE_DEVPS_PATCH and
+	    provides.  To enable this, turn on CONFIG_FEATURE_USE_DEVPS_PATCH and
 	    patch your kernel with the devps patch in the kernel-patches/
 	    directory. 
 	* Wrote basename, dirname, killall, and uptime.
@@ -761,7 +761,7 @@
 	* An initial telnet implementation was added by 
 	    Randolph Chung <tausq@debian.org>.
 	* Fixed a bug where "sed 's/foo/bar/g'" (i.e. a script w/o a "-e")
-	* ps now supports BB_FEATURE_AUTOWIDTH, and can adjust its width
+	* ps now supports CONFIG_FEATURE_AUTOWIDTH, and can adjust its width
 	    to match the terminal (defaults to width=79 when this is off).
 	* ps now accepts (and ignores) all options except for "--help" (which
 		as would be expected displays help).
@@ -784,7 +784,7 @@
 
         * Fairly massive restructuring of umount.c to deal with remounting 
 	  busy devices read-only. Adds a -r option to control that; it is 
-	  optionally compiled in with BB_FEATURE_REMOUNT
+	  optionally compiled in with CONFIG_FEATURE_REMOUNT
 	* Added a bunch of functions to mtab.c to interact with the
 	  {get,set,end}mntent interface; as it turns out, those functions do
 	  not appear to be re-entrant, and that causes a lot of problems with
@@ -855,7 +855,7 @@
 	* Created a tiny tail implementation, removing -c, -q, -v, and making
 	    tail -f work only with a single file.  This reduced tail from 6k to
 	    2.4k.  The bigger/more featured tail can still be had by disabling
-	    BB_FEATURE_SIMPLE_TAIL in busybox.defs.h
+	    CONFIG_FEATURE_SIMPLE_TAIL in busybox.defs.h
 	* Ping now falls back to doing the right thing if /etc/protocols
 	    turns up missing.
 	* Fixed mount and umount.  Previously they could leak loop device 
@@ -907,14 +907,14 @@
 	  devices. Support is toggled by MOUNT_LOOP feature -- Ben Collins
 	  <bcollins@debian.org>
 	* Several fixes from Marco Pantaleoni <panta@prosa.it> compile in
-	* fullWrite() not only if BB_TAR is defined, but also
-		if BB_CP or BB_MV are (fullWrite() is referenced by copyFile())
+	* fullWrite() not only if CONFIG_TAR is defined, but also
+		if CONFIG_CP or CONFIG_MV are (fullWrite() is referenced by copyFile())
 	    * add some compiler optimizations to further reduce executable size
 		(as a side note, on my machines the largest code is generated
 		by gcc 2.95.2 with -Os ! The smallest by plain gcc 2.7.2.3 with
 		-O2 -m386 ...)
 	    * Compile now won't fail if busybox.def.h defines 
-		BB_FEATURE_LINUXRC but not BB_INIT.  (init_main used to be
+		CONFIG_FEATURE_INITRD but not CONFIG_INIT.  (init_main used to be
 		referenced, but not compiled)
 	* Fixed a bug in setting TERM for serial console support.  TERM now
 	    defaults to "ansi" for serial consoles.
@@ -974,7 +974,7 @@
 	    to suit my evil purposes.  Costs 6k.  I'll make it smaller
 	    sometime.
 	* on reboot, init called 'umount -a -n', which caused errors
-	    when BB_MTAB was not enabled.  Changed to 'umount -a', which does
+	    when CONFIG_MTAB was not enabled.  Changed to 'umount -a', which does
 	    the right thing.
 	* init will now try to run /sbin/getty if it is present (for easy
 	    integration with the about-to-be-released tinylogin.)
@@ -1009,7 +1009,7 @@
 	* I've taken a first step to making busybox not need the /proc 
 	    filesystem.  Most apps don't need it.  Those that _require_ it, 
 	    will complain if you enable them when you disable 
-	    BB_FEATURE_USE_PROCFS.
+	    CONFIG_FEATURE_USE_PROCFS.
 	   
 	-Erik Andersen, Dec 5, 1999
 
@@ -1047,7 +1047,7 @@
 	* from
 	    Eric Delaunay).
 	* Made createPath be quiet (again thanks to Eric Delaunay).  If
-	* BB_CONSOLE_CMD_IF_RC_SCRIPT_EXITS is defined, then whatever
+	* CONFIG_CONSOLE_CMD_IF_RC_SCRIPT_EXITS is defined, then whatever
 	    command you define it as will be run if the init script exits.
 	* Updated install.sh to make it more robust (thanks to Adam Di Carlo)
 	* NFS support added to mount by Eric Delaunay.  It costs 10k when
@@ -1103,7 +1103,7 @@
 	    to Eric Delaunay.
 	* more started to read from stdin after the last file was finished, and 
 	    options were not parsed correctly (fix thanks to Eric Delaunay).
-	* more will now use the terminal size if BB_FEATURE_AUTOWIDTH is on.
+	* more will now use the terminal size if CONFIG_FEATURE_AUTOWIDTH is on.
 	* rm wouldn't remove a symlink unless the symlink was valid.  This was
 	    a side effect of the busybox 0.32 recursiveAction() fix.  Things
 	    should now work correctly.
@@ -1121,7 +1121,7 @@
 	* Removed some debugging noise from init.c
 	* Fixed ln so it works now (it was very broken).
 	* Fixed df so it won't segfault when there is no /etc/fstab,
-	* If BB_MTAB is not defined, df and mount will whine if /etc/fstab
+	* If CONFIG_MTAB is not defined, df and mount will whine if /etc/fstab
 	    is not installed (since they cannot fixup "/dev/root" to 
 	    state the real root device name)
 	* merged some redundant code from mtab.c/df.c into utility.c
@@ -1129,9 +1129,8 @@
 	 -Erik Andersen, Nov  5, 1999
 
 0.32
-	* More changes -- many thanks to Lineo for paying me to work on
-	    busybox.  If you have any problems please let me know ASAP at
-	    andersen@lineo.com or andersee@debian.org
+	* More changes -- If you have any problems please let me know ASAP at
+	    andersee@debian.org
 	* usage() now prints the BusyBox version.  This will help folks
 	    realize that they are not in Kansas anymore.
 	* Fixed mkdir -m option so that it works.  kill segfaulted w/o any
@@ -1142,11 +1141,11 @@
 	* with full regular expressions!).  Fixed a stupid seg-fault in sync
 	* Fixed mount -- mount -a failed to parse and apply mount options Fixed
 	* umount -n (patch thanks to Matthew Grant <grantma@anathoth.gen.nz>)
-	* umount -a no longer umounts /proc Added BB_MTAB, allowing (at the
+	* umount -a no longer umounts /proc Added CONFIG_MTAB, allowing (at the
 	* cost of ~1.5k and the need for a rw /etc)
 	    folks to use a real /etc/mtab file instead of a symlink to
 	    /proc/mounts.  mount, and umount will add/remove entries and df
-	    will now use /etc/mtab if BB_MTAB is defined. 
+	    will now use /etc/mtab if CONFIG_MTAB is defined. 
 	* Fixed a nice bug in recursiveAction() which caused it to infinitely
 	    hunt through /proc/../fd/* creating new file descriptors if it
 	    followed the /dev/fd link over to /proc.  recursiveAction() now
@@ -1173,10 +1172,9 @@
 	 -Erik Andersen, Oct 21, 1999
 
 0.30
-	Major changes -- lots of stuff rewritten. Many thanks to Lineo for
-	paying me to make these updates. If you have any problems with busybox, 
-	or notice any bugs -- please let me know so I can fix it.  These 
-	changes include:
+	Major changes -- lots of stuff rewritten.  If you have any problems 
+	with busybox, or notice any bugs -- please let me know so I can fix 
+	it.  These changes include:
 
 	Core Changes:
 	    * busybox can now invoke apps in two ways: via symlinks to the