CoverObject, work in progress (bug 789401)

Discussion of method and approaches:

    https://bugzilla.mozilla.org/show_bug.cgi?id=789401

Recipe for usage at:

    https://gist.github.com/3900355
Merge branch 'master' of git://github.com/mozilla/addon-sdk
Merge branch 'master' of git://github.com/mozilla/addon-sdk
Merge branch 'master' of git://github.com/mozilla/addon-sdk
checkout from 862ba11a
moved
Expose IndexedDb api (bug 786688)

Compared to previous commit (862ba11a):

* remove db prefixing
* per-addon security principal

Risks:

* will make data created using previous sdk INACESSIBLE
  (unless they take effort to find the data and export it,
  which is non-trivial)
* relying on `self.packageID` might make data INACCESSIBLE in the
  future if we change how `packageID` is derived.

Tests pass.
Freeze object, style correction, prefix url correction

* all strings changed to double quotes
* freeze `exports.indexedDB`
  - (heritage.extend, rather than `object.Create`)
  - includes test
* use `addon://` fake scheme in principal
* makeFunc replaced with `bind`
indexed-db doc from 192d5a3642
indexedDB docs reflect openForPrinciple

Doc updates:

* external example usage
* changed 'aside' to reflect current bug status on protocols, principle
* removed outdated notes on Database Naming