Added sequential functionality (run tests on one device at a time)

Hello,

This is a pull request for doing a sequential execution (run tests device by device).
I used SquareAndroid code style with IntelliJ. 2 lines seem to have changed into SpoonRunner, but seem to respect your code style better (were modified before?).
I use an ExecutorService, constructed thanks to Executors.newSingleThreadExecutor().

The principle of the CountDownLatch is still intact, it simply runs on the ExecutorService if "sequential" is set to true, and runs on a normal Thread otherwise.

I modified both the SpoonRunner.Builder() and the RunMojo Maven Plugin to get the parameter (thanks to the argument --sequential or -Dsequential).

Cheers,

Olivier Goutay
Thanks for that, I did not know!
I just pushed, adding a Executors.newCachedThreadPool() in case we are asynchronous (it is recognized to be memory friendly by reusing Thread instances, and provide an unlimited pool of Threads).