Add auto reconfiguration to Play applications

Previously, auto reconfiguration was limited to web applications only.
This was not by design, but was the case in practice.  In the auto
reconfiguration support, Play applications can be reconfigured
(although in a more limited way) and this support was not used
properly.  This change splits the auto-reconfiguration support into a
'Spring' side and a 'Play' side.  The supported JAR is the same
regardless of which kind of reconfiguration you are getting, but the
detection and modification behaviors are quite different.
Merge 49696097-play-auto-reconfiguration to master

[Completes #49696097]
Auto reconfiguration framework documentation

Previously, the two auto reconfiguration frameworks were not
documented separately.  This change updates to documentation to
reflect the new dual implementations.

[#49696097]
Merge 49696097-play-auto-reconfig-docs to master

[Completes #49696097]
HTTPS Repository URIs

Previously, only HTTP URIs were supported when downloading
dependencies using the provided repository support.  This change adds
the ability to use an HTTPS URI.

[#53676731][#4]
Merge 53676731-https-repository to master

[Completes #53676731]
Play support

This change updates the existing play support to actually work.  The
first change was to cleanup the tests such that they never write into
the test source tree.  The second change was to attach additional
libraries into the classpath differently for the dist versus staged
payloads; added to the classpath variable for dist, symbolically
linked into staged for staged.  The third change was to replace the
default Netty server with our Bootstrap implementation.

[#49696097]
Merge 49696097-play-auto-reconfiguration to master

[Completes #49696097]
Shared Play utility code

Previously, some of shared Play utility code was left in the Play
container.  This code was moved to the PlayUtils class and removed
from the Play container.

[#53308971]
Merge 53308971-refactor-play-utility to master

[Completes #53308971]
Play JPA Plugin

Previously, if a Play application used the JPA plugin, auto-
reconfiguration would not be able to reconfigure it.  This change adds
support for auto-reconfiguring Play applications that use JPA.

[#49696153]
Merge 49696153-play-jpa-plugin to master

[Completes #49696153]
Constrain Play JAR pattern

Previously, the Play JAR pattern was too wide and would match JARs
incorrectly.  This change ensures that only the proper Play JAR is
selected.

[#49696153]
Merge 49696153-still-broke to master

[Completes #49696153]
Avoid directories in Groovy detection

Directories such as:

grapes/org.codehaus.groovy

caused a failure in the Groovy detect logic, so filter out
directories.

Add a test to verify the correct behaviour.

[#53781773]
Merge 53781773-groovy-detection-fix to master

[Completes #53781773]
Add framework to components list

Previously, the PlayJpaPlugin framework was not listed in the
components.yml file.  This change adds it.

[#49696153]
Merge 49696153-jpa-plugin to master

[Completes #49696153]
Add contribution guidelines

Previously there were no guidelines for contribution to the project.
This change adds those instructions.  This change also brings the code
in line with contribution guidelines and updates all dependencies to
their latest versions.

[#53287601]
Merge 53287601-contributing to master

[#53287601]