Add RubyMine debugger gems in their own group

[#56352162]
Support Play 2.0

Play 2.0 dist applications have classpaths similar to Play 2.1.3
stages applications, so use symbolic linking. This minimises the
editing required to the start script.

[#56352162]
Merge 56352162-play-2.0 to master

[Completes #56352162]
Revert "Add RubyMine debugger gems in their own group"

This reverts commit 6d88f9a11e371d8696f5f7430a172b32271a7c4f.
Downgrade logging levels of "no internet" logs

[#54290822]
Merge 54290822-downgrade-no-internet-logging to master

[Completes #54290822]
Improved logging robustness and handling in tests

Make the logging code more robust and add diagnostics.

Use before(:all) in spec_helper.rb to ensure a normal logger is
present. This avoids example groups having to restore a normal logger
if they have created a special logger.

[#56061680]

Suppress output from download_cache_spec.rb

Create logger based on StringIO $stderr to avoid logs appearing on
STDERR. Set $stdout to a StringIO to avoid download failures appearing
on STDOUT.

[#56330430]
Merge 56061680-logger-robustness-improvements to master

[Completes #56061680]
Gems for use with RubyMine debugger
Improved check for internet connection

Check for an internet connection by attempting a HTTP GET with 10
second timeout of a well known buildpack download artefact. Cache
the result in a class variable so that each invocation of the
buildpack makes the test once only.

Beware known problems with timeouts (https://www.ruby-
forum.com/topic/143840), although the code uses a timeout option on
the API, so a problem would represent a bug in the Ruby HTTP code.

Transient internet connection problems can cause the buildpack to
enter "no internet" mode for the duration of a buildpack invocation,
but that can be rectified by re-staging. If transient connection
problems occur after the check for "no internet", then the read-only
buildpack is not used as a look aside. This is desirable as a full
repository index may have been downloaded while the internet was
available and this index may refer to artefacts which are not present
in the read-only buildpack cache.

Stub the above HTTP GET in spec_helper.rb so that the test run ok with
webmock.

[#54290822]
Merge 54290822-improve-internet-detection to master

[#54290822]
Fix unit test for new "no internet" behaviour

[#54290822]
Merge 54290822-improve-internet-detection to master

[#54290822]
refer to debugging gemfile in README
Timeout on connect and open

A testcase which times out only on read can be shown to block for
longer than the specified timeout when attempting to get from
http://1.1.1.1. With connect and open timeouts specified, the timeout
appears to operate correctly.

[#54290822]
Merge 54290822-timeout-connect-and-open to master

[Completes #54290822]
Code Climate Test Coverage

This change polishes the spec_helper such that Code Climate test
coverage is now available.
Merge branch 'code-climate'
Reformat all Ruby code

Adhere to RubyMine conventions from now on. In particular, the private
method should not increase indentations of subsequent statements.

[#56856706]
Merge 56856706-reformat-ruby-code to master

[Completes #56856706]