Allow override of DotLiquid naming conventions

DotLiquid filters and `Drops` default to `snake_case` now that 0.18 has landed (see #900 and #904 for discussion), but all my views use `CamelCase`. Rather than change all my views, i want the naming convention to be a configurable option. The Ruby naming convention remains the default but this PR adds the ability to override it in the Bootstrapper.

[Grumpydev commented on how to do that](https://github.com/NancyFx/Nancy/issues/900#issuecomment-12222281) and i've tried to follow his advice as best i can. Please let me know if i missed something. Also, i chose to in pull the `ApplicationRegistration` class from the Nancy Bootstrapper instead of implementing the `IApplicationRegistration` interface on my own. Is that cool? 

i added tests and also created a quick demo project for the DotLiquid View Engine - which i hope to put in another PR later - to test the ability to override the conventions and they both seem to work.

---

PS

What's really baking my noodle is figuring out whether coding/testing/writing up this PR was really lazier than just changing my views...