java/syncbase: Run all callbacks with an executor

Android/Default: Use an executor that will run stuff on the main
thread.

Note: The default executor won't work for tests, so we swap it out
for a more standard cached thread pool.

The strategy used matches the one we had for the old Java API.

Change-Id: Icf139eb5406347dcf41e2d44f2969fe48c349d23
3 files changed