License update. Namespaces used properly. Added a proper README, and cleaned up
the source files.