refactor initialization

initSensorInterface is now more asynchronous.
However it still calls back to javascript on the same thread.

[#56592122]
remove duplicate calls to configure
remove roundtrip js->java->js

also: 
runs most of initialization async to give control back to the browser
moves js executor queue into the data bridge to encapsulate better

[#56615394]
add permissive force sensor configuration

[#56760914]
don't start with an existing collectionTask

[#56760914]
use sensor library isValid to check for valid config

[#56760914]
applet calls javascript when it is ready

This fixes an issue with FireFox on OS X and some versions of
Java 7. It is also a more efficient way checking if the applet
is ready. And finally it might also reduce the blocking of the
JS thread because it won't be trying to call into Java so much.

[#56872730]
use start() instead of init()

hopefully this will fix an issue that Dan found.
[#56872730]
shutdown the javascript thread

also use shutdownNow instead of just shutdown.
[#56872730]
Make applet public methods asynchronous
Catch more exceptions to avoid not returning to the caller
Remove extraneous comments
Use handleCallback for initSensorInterfaceComplete
Bump version to 2.0-SNAPSHOT
Merge branch 'wip-async-api'