Adding a new option of device or simulator to the settings tab for launch and deployment
renamed mask and link methods to init for consistency
The `dbfs` module belongs in webworks, while `fs` should be initialized.

`rippls/dbfs` was being initialized for every platform, when it is
strictly used for webworks handset/tablet. Additionally, the original
(async) `ripple/fs` module is not even initialized, or used (when it
could of been re-used for cordova's file implementation).

Given this, `dbfs` was moved to `fs` in webworks.core, and it is
initalized on the platform spec initialize method. Additionally, the
fsCache require could be moved to the same place- Yay! `fs` is now
intialized in `lib/ripple`, and can be used (when needed).

On a personal note, `dbfs` has always angered me, being in the top level
of lib- It just did not feel right (and more so like a hack). Doing this
cleans things up a bit, and causes less confusion.
`ripple/fs` needs to read/write Blobs, and recursively creates dirs.

A few things were done during the creation of the webworks bb10
io.filetransfer API:

- fs.read returns a Blob by default (or text if opts.type is "text")
- fs.write can write text OR a Blob
- fs.mkdir can recursively create directories (ex: 'foo/bar/foo')

Note: Since no one really uses the module (at the moment), it felt ok to
induce non backwards compatible changes to its API.
The WebWorks BB10 io module needs to be stubbed in.

That way, things like io.filetransfer can be added without breaking.
Added blackberry.io to BB10.

This also includes a stub for the sandbox property.
Added validation for rim:permissions for BB10.
Implementation of FileSystem API for BB10 WW.

Note: This only implements requestFileSystem. resolveLocalFileSystemURL
still needs to be implemented.
Overlays can not be pinned to the bottom of the device's viewport.

This will make sure relative heights set by child nodes will have non
zero values, so they can overlay the entire viewport area.
Support virtual keyboard events in WebWorks BB10.

The event listeners for each event can be triggered by internal events
of the same naming.
There should be a way to emulate keyboard events in WebWorks BB10.

You can trigger the close/open events manually in the Events panel.

I also added an event to open and close the keyboard, which overlays
a crude keyboard placeholder onto the app, and triggers the
keyboardPosition event on each animation step. Putting all of this in
the Events panel felt the best for now, until the time comes when a
solid, worthwhile panel can be made for the virtual keyboard. I have put
this as a TODO note in the spec/events file as well.

To see the events in action, use the snippet below.

    <html><head><script>
        ["keyboardClosing",
         "keyboardClosed",
         "keyboardOpening",
         "keyboardOpened",
         "keyboardPosition",
        ].forEach(function (evt) {
            blackberry.event.addEventListener(evt, function () {
                    console.log(evt + " -> " + arguments[0]);
                });
        });
    </script></head></html>

GitHub Issue: https://github.com/blackberry/Ripple-UI/issues/387
Merge pull request #513 from blackberry-webworks/device-deployment

Adding a new option of device or simulator to the settings tab for launc...
Revert "Overlays can not be pinned to the bottom of the device's viewport."

This reverts commit 8f9917be3b3bbe4a7cd8e50780beb3f0d5b8e264.

The overlay div would stay overtop of the iframe and block any attempt
to interact with it. The virtual keyboard overlay still needs to be
fixed as well, but this will at least fix the fact that Ripple is pretty
much unusable at this point.
Fix BB10 keyboad open/close UI that was broken in earlier commit.

This was the original virtual keyboard commit.

b941fdc460d2ebceada9e613a9e2159596d81c38

It was paired with (to make it work properly):

8f9917be3b3bbe4a7cd8e50780beb3f0d5b8e264

..which, would work as expected. However, this was a _bad_ idea, which is
outlined in this commit:

f35b7cf11950bedcf457157eb68d66b135a87acd

To get everything working again, it felt best (or at least practical) to
just modify the CSS properties inside the virtual keyboard plugin, and
then reset it back after closing. Still, it does not feel awesome.