Add context logging.

Add mocha for testing. Add a new ContextHandler that does the actual contextual operations that Log4r handles, the idea being that a user could define their own ContextHandler module that implements the three functions so that Log4r would not be required. Also, reorganize the include structure a bit around the main GemLogger module to help with some of the new includes.