Bug 980562 - Use multiprocessing.Pool in getdimensions.py;r=davehunt

Seems to be a bit faster.
Bug 981846 - Make sure we completely restart b2g between runs;r=davehunt

Before we didn't restart the b2g process in e.g. the scrolling tests,
which means we were carrying state between tests.

Also, consolidate and simplify much of the logic around getting the
device into a reasonable first-run state in b2g in the global
runtest method. Likewise on Android, remove the code that kills the
process between tests: we should just run that before we run the test.