Add and fix NginxEc2LiveTest

- Test nginx on different platforms (debian, etc)
- Fix Nginx install on debian: if gcc already installed on standard
  distro, don't try to install it because caused `apt-get install`
  to fail.
- Adds AbstractEc2LiveTest.
Add SoftwareProcessEntityTest.testReleaseEvenIfErrorDuringStart

- Trying to reproduce problem where VM left running in aws-ec2
  by nginx; but clearly this wasn't it.
- And tidies test with setUp/tearDown methods.
Rename NginxAmazonTest to NginxWebClusterEc2LiveTest
Add <MyEntity>Ec2LiveTest for various entities

- Convert MySqlLiveEc2Test to java, and use new format
- Convert PostgreSqlLiveTest to java, rename to PostgreSqlEc2LiveTest,
  and use new format
- Convert ActiveMQEc2LiveTest to java, and use new format
- Add MongoDbEc2LiveTest
- Make JMSBroker @VisibleForTesting methods public
- Add TomcatServerEc2LiveTest
- Add Jboss7ServerEc2LiveTest
- Add Jboss6ServerEc2LiveTest
- Add KarafContainerEc2LiveTest
- Add RedisEc2LiveTest
- Add CassandraNodeEc2LiveTest
- Add RabbitEc2LiveTest
- Add QpidEc2LiveTest
- Add ActiveMQEc2LiveTest
jcloudsUtil.getFirstReachableAddress retrying

- Temp fix? Retries for a given period of time, rather than just
  a maximum number of attempts that jclouds does here.
- Should really use one of the other clouds config options.
Merge pull request #534 from aledsage/tests/nginx-live

Live tests on EC2 for a variety of entities