Make selenium tests more robust

The selenium tests are often hanging in the gate due to rogue
'firefox -silent' processes. Borrow a fix from SST that overrides
the default Firefox WebDriver so it doesn't spawn the processes in the
first place.

There's also a ~10% timeout failure in the qunit/jasmine tests.
Make sure the default socket timeout is set early enough so
the initial selenium/testserver setup doesn't occasionally fail on the
first test of a test case. This gets it down to around 5% failure rate.

Also wrap each test case in a sleep() sandwich to give services time to
settle before the tests start. This isn't ideal as it makes the tests
take longer, but with this change I finally get no false negatives at all
over 100+ runs.

Change-Id: I24963f575fd6eeb81dbff883404c7cff45e97397
Closes-bug: 1317630
Merge "Make selenium tests more robust"