Make ScriptableDocument use BSONValue for storing data to be updated.

Currently, ScriptableDocument uses AnyRef for storing data to be
updated and uses BSONValue for getting data from database. This
inconsist makes codes complex.

This patch makes ScriptableDocument always contains BSONValue and
convert the data when document returns to the rhino engine.