no singleton: have user define their own server class, run it

This changes server to be a mixin that provides the server DSL.  The
difference is there is no longer a singleton for the server.  The user
defines their own server classes (and they can define as many as they
want).  The only requirement is to mixin the `Deas::Server` module.

In theory, a user could create as many servers as they want.  Each
server returns a unique Sinatra app that can then be run or mounted
or whatever.

The goal here is to remove a Singleton - which can be restricting
and difficult to test.  Also, Singletons may present problems in
multi-threaded environments.

@jcredding check out the brief README section I added for the "executive summary".  Ready for review.