[SystemInfo] fix JS code style
[common] Create C++ wrapper to replace ExtensionAdapater

Current ExtensionAdapter ends up merging the concept of extension and
instance (before called Context) together, and this causes confusion
understanding the execution of the code.

The new approach is to create a C++ pair of classes that represent
Extension and Instance. This mimics what we have inside Crosswalk, and
also is pretty much the same approach PPAPI constructs its C++ API as
well.

One nice consequence is that the subclass of Extension can be used to
store objects shared by all instances -- since it have the correct
lifetime. We can get rid of most ad-hoc singleton implementations in the
code.

One downside is that we resort to virtual methods in this new
approach. Even though the overhead is low, if this proves to be a
bottleneck for a specific extension, it's easy to fallback to using the
C API directly instead of the convenience.
[Notification] Use new C++ wrapper in common/

NotificationExtension now hosts the NotificationManager for mobile and
passes to the instances. For convenience, two different instance
interfaces were created, one for Desktop other for Mobile.

Behavior should not change after this patch.
Merge pull request #175 from cmarcelo/cpp-wrapper

Add a more friendly C++ wrapper for our C API
Merge pull request #173 from Ryan--Yang/master

[SystemInfo] fix JS code style
[Time] Fix TimeDuration unit set property comparison
[Time] Fix toString getDay misunderstanding

getDay() returns the day of the week (0 - 6)
getDate() returns the day of the month (1 - 31)
[Time] Add unicode timezone support

Tizen uses unicode timezone to do timezone operations.
[tizen] Use new C++ Wrapper instead of old ExtensionAdapter
[tizen] Remove not used function
[tizen] Fix JS coding style

Fixes #166.
Merge pull request #176 from ricardotk/wip

[Time] Add unicode timezone support and fix API
Merge pull request #178 from cmarcelo/tizen-using-cpp-wrapper

Tizen using cpp wrapper
Add Tizen Filesystem API.

This commit implements most of the Tizen Filesystem API.

Some things were intentionally left unimplemented, such as listing and
obtaining stoarage information. These will be implemented as soon as the
need to pass all TCT tests arise.

File I/O works, as evidenced by the new filesystem.html example (a crude
text editor) -- although this example doesn't showcase the whole API.
Merge pull request #148 from lpereira/filesystem-api

Add Tizen Filesystem API.
Merge remote-tracking branch 'upstream/master'