Fix race condition in ServerInstrumentation.finishAllActivities()

Summary:
The `.finishAllActivities()` method did not run on the main thread when
a session got deleted. The activities that are finished are coming from
the `activitiesReporter` which also reports (and removes) activities
that were destroyed. If these things are running on seperate threads,
race conditions may occur sometimes.

Test Plan:
- Ran one of the Facebook e2e tests
```
$ mvn clean install
...
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] selendroid ......................................... SUCCESS [  0.115 s]
[INFO] android-driver-app ................................. SUCCESS [  2.056 s]
[INFO] selendroid-server-common ........................... SUCCESS [  0.895 s]
[INFO] selendroid-server .................................. SUCCESS [ 15.418 s]
[INFO] selendroid-grid-plugin ............................. SUCCESS [  0.703 s]
[INFO] selendroid-common .................................. SUCCESS [  0.901 s]
[INFO] selendroid-standalone .............................. SUCCESS [ 15.368 s]
[INFO] selendroid-client .................................. SUCCESS [  0.540 s]
[INFO] selendroid-test-app ................................ SUCCESS [  4.674 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
```

Reviewers: mkonicek, ainsej, krishnakumar, juyuan.yang.9

Reviewed By: mkonicek

Differential Revision: https://reviews.facebook.net/D29199
Corrections to JSON to register at Grid hub.
Fix 'error: cannot find symbol' error

Summary: This slipped through in another diff. :/

Test Plan:
```
$ mvn clean install
...
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] selendroid ......................................... SUCCESS [  0.103 s]
[INFO] android-driver-app ................................. SUCCESS [  1.962 s]
[INFO] selendroid-server-common ........................... SUCCESS [  0.823 s]
[INFO] selendroid-server .................................. SUCCESS [ 14.917 s]
[INFO] selendroid-grid-plugin ............................. SUCCESS [  0.569 s]
[INFO] selendroid-common .................................. SUCCESS [  0.826 s]
[INFO] selendroid-standalone .............................. SUCCESS [ 15.737 s]
[INFO] selendroid-client .................................. SUCCESS [  0.532 s]
[INFO] selendroid-test-app ................................ SUCCESS [  4.301 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
```

Reviewers: mkonicek

Reviewed By: mkonicek

Differential Revision: https://reviews.facebook.net/D29241
Merge pull request #713 from frolix/SeleniumGridRegistrationJson

Corrections to JSON to register at Grid hub.
Added folder monitoring capability and fixed emulator launching problem.
- The folder monitoring allows users to add one or more native android
apps on fly and selendroid immediately signs and adds these files to
the app store so they can be used without restarting the node.
- Adding one seconds wait before calling "isDeviceReady" to avoid the
command sent too quickly while the emulator still starting and not ready
to receive any commands

Signed-off-by: Binh Vu <bvu@paypal.com>