Autoloading (psr-4) and related cleanup

The main gem of this is the basecoat autoloading with PSR-4. However, there are some other items involved in this request. The classes are now broken into separate files (with appropriate names) and some general cleanup was done (plenty of of tabs were scattered about). Outside of this general cleanup the actual autoloading change is much smaller than it seems.