Renamed most of the libary classes to avoid frequent naming conflicts.
We are now smarter about not compiling in library-interface code we don't need -- we now exclude things that are only used in macros.

Fixed up the behavior of some of the load forms to ensure things are properly macro-sync'd.