ObjectMapper reuse & config

Enables ObjectMapper reuse through implicit injection. ObjectMapper can
be accessed & configured.

Additionally, added a per-request method which allows overriding the
ObjectMapper for a specific request
def->var, ensuring mapper isn't re-instantiated
Indirection: Abstracting Jackson out to allow other impls e.g. json4s
No more implicit magic, adding layer of indirection.
routes should hold the definition too
refactor : findRouteAndMatch should avoid imperative implementation
travis should pass
Pass the filename of the template to the factory

Mustache uses the file's extension when resolving
partials, so it's important that the actual file name
is used.
Don't add .mustache extension to template file name

It's reasonable to want to have "home.html" be a
mustache template, for example. The current logic
will turn that into "home.html.mustache" in development
but not in production.
Use HttpServerDispatcher to fix remoteAddress property of Request.
modify FileService handle conditional GETs for static assets
need to send Last-Modified response header and process the If-Modified-Since header
fixing invalid tests
DefaultJacksonSerializer is now an object

Also, serializer in the controller is a settable var for setting the
default serializer without making a new render method.
AppService: Removing Jackson Serializer
Import cleanup
Merge remote-tracking branch 'twitter/master' into mapper-reuse

Conflicts:
	src/main/scala/com/twitter/finatra/Controller.scala
	src/main/scala/com/twitter/finatra/ResponseBuilder.scala
Update JsonSerializer.scala

Newline removal
Update readme.md to reflect issues on installation
support use of templates from dependencies in development mode, by loading resources from file system and class path
Merge pull request #160 from tptodorov/master

support use of templates from dependencies in development mode, by loadi...