Implementation of the Structured Cloning Algorithm.

Implementation of the Structured Cloning Algorithm for the following object types:

* Blob
* Boolean
* Date
* File (deserialized as Blob object).
* Number
* RegExp
* String

Because the asychronous FileReader API is used to serialize Blobs/Files to string, the Sca.encode function now requires a callback and this pull request includes changes to support a callback on Sca.encode