better testing

* Added jshint
* rewrote EJSON.clone to support circular testing
* added the EJSON variable - prepare for pr to meteor