Bug 545700 - Places API

Bookmark management and querying -- history coming shortly

* `save` functions implemented: ducktyping, classes, implicit recursive dependency saving, conflict resolution handling
* `search` function implemented with support for tags, urls, group and query searching
  * urls support 4 different schemas: '*moz.com', 'moz.com', 'http://moz.com/page', 'http://moz.com/page/*', mapped to various parameters on the platform search
* Promise and emitter APIs
  * Granular error handling with emitters
  * Error handling with promises, although less information -- upon correction, can resave a batch without failure due to mapping of initial construction parameters to a created instance
* Lots of 'host' requests implemented if someone wanted to use those

:metal:

TODO

* Comments and documentation is needed everywhere, pretty much
* See if there's a better way to query for folders/separators, other than search/filtering
* History querying

@Gozala