templates: disallow engine/template exts

This sets up disallowing certain extensions as valid template exts
for binding engines and looking up templates files.  Right now the
only ext disallowed is `.rb`.

The reason we want this is that there are times you want to name
the template after a corresponding ruby file - maybe the handler
and the template have the same name - one with .rb and the other
with the template extension.

Because of the way glob works, you can't guarantee any order so
if your template file name isn't unique, the glob may get the
wrong file.  We make the glob aware of these disallowed files and
have it ignore them.
Merge pull request #107 from redding/kr-disallow-exts

templates: disallow engine/template exts
version to 0.10.1

* templates: disallow engine/template exts #107

/cc @jcredding
Feature branch, modify Sanford configuration and startup logic

This is an effort to modify Sanford to work more like Deas in how
it is configured and is started. The goal is to make them similar
and also simplify some of the oddities of working with Sanford.
This will change the CLI to take a configuration file, which is
expected to define a Sanford server. The server will contain all
the configuration for the IP, port and other options. The server
will have (or be given) a router. The router will be where
services are routed. Service handlers will continue to work as
they previously did. This branch is a collection of the changes to
get the changes working as expected.
Add `Router` and `Route` for routing and running services

This adds a `Router` and `Route` class. The `Router` will replace
part of the `Host` and `HostData` logic for routing services. This
also adds a `Route` class that will be built when a service is
added to the router. This will handler building and running a
`SanfordRunner` and returning the response. This follows Deas'
implementation and is part of the effort to modify Sanford's
configuration and startup logic.