Issue 1089511

* wrap `Bluetooth` & `BluetoothTransfer` to new-able format
* rename private methods with `_` prefix
* rename `init` to `start` method to align other bootstrapers
* add jsdoc
* fix jshint