Add Tld scanning exceptions to Tomcat startup

Addresses gh-263 to some extent.
Use System properties for skipping Jars for TLD etc. scans

I'd prefer a fix that wasn't global for the VM, but the default values shoudl be harmless
at least.

Fixes gh-274
Use custom condition to detect Hibernate 4.2 and 4.3

...without any deprecation warnings and with some chance that it will
still work with Hibernate 5.

Fixes gh-256
Fix JSP sample
Polish
Allow per context TLD skip patterns

Change TomcatEmbeddedServletContainerFactory to allow per context
skip patterns to be defined, rather than using a global system property.

This commit also renames `skipPatterns` to `tldSkip` to align it with
Tomcat context.xml configuration.

Updates gh-256
Add LevelRemappingAppender and remap thymeleaf

Add a LevelRemappingAppender that can remap the level of logback events
as they are written.

Also update the base configuration to change the somewhat noisy
Thymeleaf INFO logging to DEBUG.

Fixes gh-265
Upgrade to Spring Framework 4.0.1 SNAPSHOT

Upgrade to the latest 4.0.x SNAPSHOT of the Spring Framework in
preparation for the 4.0.1 release.
Remove custom JodaModule support

Remove the custom JodaModule support which is not necessary with
Spring 4.0.1.

Fixes gh-186
Remove dead code

Remove what appears to be unused CLI code.
Better getRootJar exception capturing
Fix URL from String creation to work on Windows

Fixed the nested jar URLHandler to correctly deal with files on
Windows.

Fixes gh-269
Make SpringApplication list/initializers respect their Ordered
Listen for parent close events and close child context

If the context hierarchy is from a SpringApplication we can control
the shutdown semantics a bit. Specifically we need a listener in the child context
that will shut it down when the parent closes (since assummably the child relies
on beans in the arent that may now be disposed).

Fixes gh-275
Look in parent context for Endpoints to expose

Fixes gh-275
Add --HEAD support to Homebrew formula

This change adds support for --HEAD builds to the Homebrew formula. It
defines a conditional dependency on Maven and builds the -cli project
during install.  The location to install from is abstracted out so
that code is identical regardless of whether the build is --HEAD or
mainline.
Ruby indentation conventions

By convention, Ruby code is indented using two spaces (  ) per-level.
The code used tabs (\t) previously and therefore wasn't idiomatic.
This change updates the indenting to use two spaces.
More detail on reloading static resources
Re-initialize logging if Environment changed settings

Fixes gh-273
Remove hard coded bean names for couple of @ConfigurationProperties beans