[Extension] Add API for Check API Access Control

This API is for external extension developer. The API need to be called in the
implementation of each exported API in C or C++ code. For C extension
implantation, header file "public/XW_Extension_Permissions.h" should be
included. For each API that need access sensitive data, developer should call
CheckAPIAccessControl for API control. For C++ extension implantation, header
file "xwalk/common/xwalk_external_extension.h" should be included.

The basic flow of API access control is as below:
1.when render process execute a JS API which need access sensitive data
of device, render process send a message to extension process
2.in extension process API's implemetation, it should call
  checkAPIAccessControl, which will call PermissionsDelegate
  (which is in also extension process).
3. extension process send a message to browser process.
   XWalkExtensionProcessHost -> XWalkExtensionProcessHost::Delegate
   (which is XWalkExtensionService) -> XWalkExtensionService::Delegate
   (which is XWalkAppExtensionBridge) ->xwalk::application::
   ApplicationService::CheckAPIAccessControl().
[Extension] Added APIs for permission-function register.

The runtime permission mapping is registered by extension which
implements some specific API, for example: "bluetooth" ->
"bluetooth.read, bluetooth.write, bluetooth.management" Whenever there
comes a API permission request, we can tell whether this API is
registered, if yes, return the according permission name.
Merge pull request #1579 from mbbill/permission_4

[Application] [Extension] Added two permission APIs.
[Tizen] Make better split between Tizen and Tizen mobile codebase

There are generic and mobile specific parts of the code that could
be split or shared. This patch enables -Dtizen=1 by default and moves
mobile specific code under tizen_mobile and OS_TIZEN_MOBILE flags.