Add basic ignore file

We don't want emacs and python generated files cluttering up our git
status.
Pure source install python version

The python version can now build and install clang into a local directory.
Now to expand it with the tool set concept so I can build the rest with
this specific compiler.
Ignore the local directory where I am install things.

Should probably move this someplace user central in the future, like the
file cache.
Added some design notes to our README
Created test package and python test runner

This is a basic C++ hello world program and package, used to create some
actual tests for our software.
Move core python functionality into separate module

We want this to be usable as a library as well as a command line program.
Added tracking of which packages have been installed

This does not yet track files, so we don't know what files a package has
installed.
Uninstall support added

We use a brute force approach to find what files an installed added to
the environment, then store those along with the package environment in
the local package database. This lets us remove all the files a package
placed.  Some corner cases not handled here, but enough to get going.
Added the ability to list installed packages

Simply reading the package database and printing results.  A future version
should include the package description so you have some idea what the
package does.
Design and usage docs updated

Updated the working example, and added some more design thinking.