Increase priority of EndpointHandlerMapping

The Actuator endpoints ought to take precedence over others (since
they are important and users can isolate them using management.contextPath
if necessary). This change puts the @Order at -100 (well before the default
order of the RequestMappingHandlerMapping at 0).

Fixes gh-1107
Add @Conditional to prevent HATEOAS blowing up

Spring Plugin is required when using @EnableHypermediaSupport
Add @EnableEntityLinks to hypermedia support
Add @Conditional to prevent HATEOAS blowing up
Grab main class from "run" task if it exists

The test is a bit crap at the minute (no assertion), but the build
is successful and you can see from the log that the correct main
is used

Fixes gh-1099
Polish
Revert "Add @Conditional to prevent HATEOAS blowing up"

This reverts commit e6e890777040620d4e259fb79d1c56af6d1f3c71
which has an incorrect commit message.
Grab main class from "run" task if it exists

Fixes gh-1099
Implement simpler exclusion logic for Gradle

Simplify the exclusion logic used in Gradle by implementing implicit
exclusions rather than trying to detect transitive excludes.

This commit reverts much of the code originally included to fix gh-1047
which adds far too much complexity to the build and still doesn't solve
the underlying issue.

Fixes gh-1103
Support for main class detection in installApp

I'm sure someone can do a better job of this, but here's a proposal
that works. It uses our FindMainTask to set the relevant properties
if theu are missing in the application plugin.

Fixes gh-1105
Correct docs on BeanNameViewResolver (Fixes gh-1078)
Properly close context hierarchy in tests

Prior to this commit, some tests were creating a parent/child
relationship but were only closing the child context. This could
be an issue with the autoconfig module as a lot of auto-config
kicks in by default.

This commit adds a new test utility designed to properly handle
those situations. Updated tests that were creating a context
hierarchy to benefit from that.

Fixes gh-1034
Add additional samples to README

Fixes gh-1068
Enhance @GrabMetadata documentation a bit

Fixes gh-320, since this is the officially supported mechanism
for changing the version of Spring (and other dependencies).
Clarify main class finder functionality in Gradle plugin

See gh-1072
Order logger output by short classname

Fixes gh-1067
Default endpoints.jmx.domain to the spring.jmx.default_domain
Fix parsing of properties in @IntegrationTest

This commit reuses the standard behavior provided by Properties for
parsing keys rather than parsing the keys ourselves. This provides a
consistent features set regardless of where the property is defined.

Fixes gh-1110
Better support for HornetQ embedded broker

Prior to this commit it was not safe to start several contexts
using the HornetQAutoConfiguration in the same VM. Each context
was trying to start their own HornetQ embedded broker by default but
only the first was really starting. Worse, the various InVM connection
factories were all silently connecting to the first broker.

This commit introduces a new "serverId" property that is an auto-
incremented integer by default. This identifies the server to connect
to and allows each context to start its own embedded broker in total
isolation of other contexts.

This commits makes it possible for a context to disable its own
embedded broker and connect to an existing one, potentially started
by another context.

Fixes gh-1063
update javadoc and test method to reflect current implementation