Init apollo client
Update dependency, remove redundancy code
Merge branch 'apollo' into apollo-client

* apollo:
  Remove $diff and mongo-ext for temporary and introducing String.startsWith and String.endsWith.

Conflicts:
	index.js
	mongo-ext.js
Merging explict commands
Adding setAttr, getAttr, setTextValue to Element.prototype, bug fixes
Merge branch 'apollo' into apollo-client

* apollo:
  Adding RegExp.escape()
  Adding new methods to Number.prototype
  refine code style with JsFormater
  add test of Array.rotate
  rewrite Array.rotate with stl method
  Added RLE encoding support to $utils (also a new namespace for $utils)

Conflicts:
	index.js
Update $format and adding EventThrottle
Merge remote-tracking branch 'origin/apollo' into apollo-client

* origin/apollo:
  link extend.js to apollo
  Adding preserve param to $define.

Conflicts:
	index.js
Merge branch 'apollo' into apollo-client

* apollo:
  Adding String.prototype.toTitleCase(), and remove deprecated functions.

Conflicts:
	index.js
Update Request and adding json support to Element.prototoype.setAttr()
Fixing non get/post requests
Fixing some doc, and added blocker to all Node.prototype.findAncestor* methods
Fix lint error
Adding trimLeft and trimRight
Fix lint error and remove dead code, improve compatibility on IE9/10
Fix toDatasetName, and make getData on IE identical to which on modern browser
Using new naming style
Adding get/setVisibility() to Element.prototype
rename findAncestorHasAttribute to findAncestorWithAttribute
Introduce CallbackBuffer