[bluetooth] refactoring code

* Add CAPI(),  CAPI_SYNC() and CAPI_SYNC2() macros :
  In order to handle Tizen CAPI in a generic way. If CAPI call returns
  an error, a JSON post message is directly sent back to JS.
  If CAPI call returns no error, reply id is stored in order to be
  reused to finalize the JS async call.

* All reply ids are stored in reply_id_map_ associated with the
  JSON message cmd.

* Add specific methods to send JSON messages to JS:
    - PostAsyncReply() method is used for JS async calls.
    - SendCmdToJs() method is used to independently update JS state.
      For instance it allows to update Bluetooth web API state
      when BlueZ is attacked externally to Tizen CAPI.

* Remove several useless variables/methods.

* Fix getDefaultAdapter() API.

Also fix XWALK-2832, XWALK-1334, TC-1940 and TC-2126
Merge pull request #410 from eurogiciel-oss/refactor_bluetooth

[bluetooth] refactoring code