[Tizen][Runtime] Implement widget preference attribute.

The 'preferences' attribute allows authors to manipulate a widget
storage area that is unique for the instance of a widget. It does this
by implementing the Storage interface specified in
http://www.w3.org/TR/webstorage/

Spec:
http://www.w3.org/TR/widgets-apis/#the-preferences-attribute

This CL implements the below features,
1. Web Storage functions and attributes, includes,
   length, getItem(), setItem(), removeItem(), clear().
2. 'readonly' field support for the key/value pairs.
3. Remove the widget database file when uninstallation app.
4. Load Manifest configuration when creating widget DB.
Merge pull request #1713 from shaochangbin/widget_handler_preference

[Tizen][Runtime] Implement widget preference attribute.