Add a factory method to ScriptableFuture.

Add a factory method to remove repetitve ScriptableFuture creation code. This
factory method will be used internally.
Add DB API stubs.

This patch only adds interfaces. Methods will be implemented soon.
Implement Query methods.

This patch implements query methods except for where. See
https://github.com/SollmoStudio/beyond/wiki/Beyond-DB-API-Query for more
information.
Implement Schema constructor.

See https://github.com/SollmoStudio/beyond/wiki/Beyond-DB-API-Schema for
more information.
Implement ScriptableDocument constructor.

This constructor is used internally. Users are not allowed to construct
an instance directly. A user must get a ScriptableDocument from
ScriptableCollection.
Implement ScriptableDocument.objectID.

The objectID is read only property that contains the ObjectId of a document.
Implement ScriptableCollection.insert() method.

Insert method receives a JavaScript object and returns a ScriptableFuture.
Implement ScriptableCollection.find() method.

Find method receives a ScriptableQuery and returns a ScriptableFuture gives
Array[ScriptableDocument].
Implement ScriptableCollection.findOne().

FindOne method receives a ScriptableQuery and returns a ScriptableFuture which
gives ScriptableDocument. This method returns only the first document unlike
find method.
Add getter to ScriptableDocument.
Add some DB API(insert, find and findOne) examples.

This patch adds examples to show how to use DB API.

There are three examples:
 - insert
 - find
 - findOne

To run insert example, send POST to /plugins/insert/{key}/{value}.
This example inserts the key and value to example.keyValue collection.

To run find example, send POST to /plugins/find/{key1}[/{keyN}]
This example finds all the documents whose key is one of keyN.

To run findOne example, send POST to /plugins/findOne/{key1}[/{keyN}]
This example finds the document whose key is one of keyN.