rewrites the library to expose the api used internally before
makes class paths optional
fixes problems with google closure compiler
adds optional addon for declaring interfaces
resolves conflicts in the readme