Improve Travis-ci change detection

Closes #1002
Make fw_untar and fw_unzip clean up the compressed files
Add warning comments to run-ci.py
Remove manually adding TRAVIS_COMMIT_RANGE
Substantial changes to how travis-ci detects what files have been modified
Add debugging, handle empty commit range
Fix syntax errors, better debugging
Handle travis not passing commit range on PRs
Remove IRC notifications from travis-ci
Improve Travis-CI log output
Return fail if we saw any kind of exception inside travis
One last comment
Merge pull request #1006 from hamiltont/toolset-updates

Rewrite of travis change detection
Split play-java into play-java and play-java-ebean

The directory was previously called 'play-java' and the display name
was 'play-java-ebean'. They are now split as follows:
* a non-database part with a directory and display name of
  'play-java'.
* a database/ebean part with a directory and display name of
  'play-java-ebean'.
Split play-scala into play-scala and play-scala-anorm

The directory was previously called 'play-scala' and the display name
was 'play-scala-anorm'. They are now split as follows:
* a non-database part with a directory and display names of
  'play-scala' and 'play-scala-windows'.
* a database/anorm part with a directory and display names of
  'play-scala-anorm' and `play-scala-anorm-windows'.
Download sbt so that it can be used by Play
Upgrade play-java and play-scala from Play 2.2.0 to 2.3.2
Moved play-java[-ebean] and play-scala[-anorm] into one play2 directory

All these tests use Play 2.3. Setup and configuration is standardised and
generated by the `generate_config.py` script. In the future some of the
other Play 2 tests could be moved into this directory.
Fix play2-java-ebean and play2-scala-anorm's tests

- Single query tests should return a JSON object not a list
- Multiple query tests should perform query count parameter conversion
- Run sequential queries immediately in the same thread