Refactor benchmark_configs

This is a work in progress.

1. Add more attributes to each test, which will be use to drive the
   filter and meta attributes for frameworks on the results website.
2. Add "database os" attribute to each test, so that the benchmarker can
   know which tests should be executed in a given hardware configuration.
   (See servicestack for an example of four different Windows/Linux
   combinations.)
3. Remove "sort" attribute from all tests.  This was used as a unique
   identifier for tests to attach their results to the meta data on the
   results website.  Now that the meta data comes from the tests
   themselves, this is unnecessary.  (Besides, we already had unique IDs
   for each test without a "sort":  the tests' names.)
4. Separate notion of "database server" and "client" for the installer.
   Previously, it would attempt to install all db and client software on
   the same machine.
Refactor benchmark_configs

This is a work in progress.

1. Standardize "None" as the database type for tests that don't involve a
   database.  Also, use "Linux" as the database OS type for those tests.
   That attribute is really "when do you want to run this test, given the
   current database OS?" and so we'll arbitrarily pick Linux.
2. Specify a display_name for every test so that we don't need any logic to
   come up with a default display name.
3. Add an option to run-tests.py that prints the test metadata as JSON.
   This will be used by the results website.
4. Fix some small errors / typos.
Refactor benchmark_configs

This is a work in progress.

1. Fix output for --list-test-metadata.
2. Fix reference: ssh_string -> client_ssh_string.
3. Print stack traces on errors during test runs.
4. Fix argument: --application-os -> --os.
Fix a few minor errors in test metadata.
Fix asp.net+mono setup script to stop the mono server.
Disable some nginx logs.
Disable more nginx logging.
Stop mono correctly in nancy test.
Updated play-scala to 2.2.0-RC2
Updated play-java to 2.2.0-RC2
Updated play-java-jpa to 2.2.0-RC2
Merge pull request #486 from huntc/play-2.2.0-rc2

Play 2.2.0 rc2 upgrade
Refactored setup scripts for play to be much simpler - also fixes an issue where play-java-jpa was never being executed.
Merge pull request #487 from huntc/optimised-play-start

Refactored setup scripts for play to be much simpler
The 0.8.0-rc3 release of bonecp that we upgraded to in Play 2.2.0 introduced a performance problem whereby prepared statements were not being reused:

https://bugs.launchpad.net/bonecp/+bug/1168616

0.8.0-rc4-snapshot apparently fixes this issue, but it is not yet deployed to a release repository.

The workaround here is to downgrade bonecp back to what it was for the 2.1.x branch i.e. 0.7.1.RELEASE.

Bonecp will hopefully release 0.8.0 and Play 2.2.1 will be released with it as a dependency.
Merge pull request #488 from huntc/bonecp-downgrade

Downgrade bonecp for play 2.2 apps