Convert between BSONValue and AnyRef with field information.

Currently, ScriptableCollection doesn't consider field type when saving
the data. It causes type error on reading even the data is convertable
to required type.

This patch makes ScriptableCollection convert the data to BSONValue with
Field.
Support Date type on DB API.

Currently, there is a bug so Date type is not saved.
This patch fixes the bug and add example of saving Date.
Convert to requested type when read document from database.

Currently, ScirptableDocument reads data only if the saved data's type
is exactly same as the specified type in schema.
This patch makes ScriptableDocument convert the data with Rhino engine
if available.