Bug 1033961: Add result handler for Bluetooth Core profile (under bluetooth2/), r=btian

The result-handler class contains a method for each interface
in the Core profile and a method for failed calls. The patch
also adds runnable classes that execute a result handler's
method on the main thread.
Bug 1033961: Split Bluedroid start/stop code (under bluetooth2/), r=btian

This patch prepares refactoring of the Bluedroid start and stop
code towards an asynchronous design.
Bug 1033961: Asynchronous Bluedroid starting and stopping (under bluetooth2/), r=btian
Bug 1033961: Asynchronous Bluedroid adapter methods (under bluetooth2/), r=btian
Bug 1033961: Asynchronous Bluedroid device-property methods (under bluetooth2/), r=btian
Bug 1033961: Asynchronous remote-service methods in Bluedroid (under bluetooth2/), r=btian
Bug 1033961: Asynchronous discovery methods in Bluedroid (under bluetooth2/), r=btian
Bug 1033961: Asynchronous Bluedroid device bonding (under bluetooth2/), r=btian
Bug 1033961: Asynchronous authentification in Bluedroid (under bluetooth2/), r=btian
Bug 1033961: Asynchronous Bluedroid DUT and LE interfaces (under bluetooth2/), r=btian