Factor out the Servitude::NS hack

This puts all the constants (APP_ID, etc) and configuration and logging
APIs into the Servitude namespace instead of injecting them into the
application's namespace. This simplifies the code and makes it possible
to use logging statements while running unit tests (regardless of
whether Servitude has been booted or a Servitude server is running).

We introduce a new 'server_class' optional keyword to Servitude.boot.
Its value is a Class object, and it must be supplied if a Server class
in the host namespace is not defined.

The changes to examples entail booting after the Server class is
defined rather than before, for reasons just mentioned.
Merge pull request #5 from njonsson/factor-out-servitude-ns-hack

Factor out the Servitude::NS hack