Support SQL exception translation for MSSQL 209

SQL Server error 209 [1] will now raise a BadSqlGrammarException.

[1]: http://www.sql-server-helper.com/error-messages/msg-1-500.aspx

Issue: SPR-9946
Respect spring.profiles.active in #addActiveProfile

Prior to this commit, calls to ConfigurableEnvironment#addActiveProfile
would cause any active profile values provided via the
"spring.profiles.active" property to be ignored.

Now these two mechanisms can be used in conjunction and work as
expected.

Issue: SPR-9944
Make hamcrest dependency optional in spring-test

Users of Spring MVC Test will need to list a hamcrest dependency --
either hamcrest-library or hamcrest-all.

Issue: SPR-9940
Add UnknownHttpStatusCodeException

This is more specific exception raised instead of RestClientException
when the raw HTTP status code received from the server is not one of
the HttpStatus enum values.

Issue: SPR-9406
Correct typo in GRADLE_OPTS for Windows

The -XX:MaxHeapSize option should include the 'm' postfix to signify
that the value is megabytes rather than bytes.
Merge pull request #177 from EzequielB/master

* branched_master:
  Correct typo in GRADLE_OPTS for Windows
Develop ConcurrentReferenceHashMap

Develop a new ConcurrentMap implementation that support both weak and
soft entry references. Intended primarily to be used internally to
support fast concurrent caching.

Issue: SPR-9796
Polish Property class
Cache and late resolve annotations for performance

Annotations are no longer resolved in the constructor and are cached
for improved performance.

Issue: SPR-9166
Update cache to support concurrent reads

Change the cache implementation from a synchronized weak hash map to
a concurrent implementation.

Issue: SPR-8701
Merge pull request #146 from philwebb/SPR-9796

* SPR-9796:
  Update cache to support concurrent reads
  Cache and late resolve annotations for performance
  Polish Property class
  Develop ConcurrentReferenceHashMap
Polish whitespace and formatting
Corrected date pattern in JavaDocs

The 'hh' pattern should be 'HH' as ISO dates use 24hr notation.
Support DateTimeFormat annotation without Joda

Dependency on Joda Time when using the @DateTimeFormat annotation is
now optional. If Joda Time is not present the JDK SimpleDateFormat
will be used to parse and print date patterns. If Joda time is
present it will always be used in preference to SimpleDateFormat.

Issue: SPR-6508
Move JRuby dependency below Joda

JRuby includes a copy of joda classes with the same package names.
This commit changes the order of the loaded jars to load the original
joda classes first.
Support for custom global Joda DateTimeFormatters

Added dateFormatter, timeFormatter and dateTimeFormatter properties
to JodaTimeFormatterRegistrar allowing for custom global formatting.

DateTimeFormatterFactory can be used when configuring with XML.

Issue: SPR-7121
Merge pull request #161 from philwebb/SPR-7121

* SPR-7121:
  Support for custom global Joda DateTimeFormatters
  Move JRuby dependency below Joda
  Support DateTimeFormat annotation without Joda
  Corrected date pattern in JavaDocs
  Polish whitespace and formatting
Update changelog
Update changelog
Release version 3.2.0.RC1