Bug 976216 - Part 1: Add AppConstants.MOZILLA_OFFICIAL. r=rnewman
Bug 976216 - Part 2: Purge startup caches when starting Gecko in developer builds. r=mfinkle

This change only impacts developer builds.  A developer build is one
where MOZILLA_OFFICIAL is not set.

The startup cache is invalidated when the buildid changes; see [1] for
details.  For MOZILLA_OFFICIAL builds, the buildid is always bumped, so
the startup cache is always fresh on a package re-deploy to device.

Most developers re-deploy using |mach build mobile/android && mach
package && mach install| or similar.  This does not bump the buildid.
The re-deployed package will read the out-dated startup cache, leading
to frustrating inconsistencies when developing Javascript, especially
chrome content and module JSMs.

This change purges the startup caches every time Gecko is started in
developer builds.  This keeps the running Javascript consistent (which
is good for development), but incurs a startup performance
penalty (since the cache must be purged, and since the cached files must
be recompiled, etc).

[1] http://hg.mozilla.org/mozilla-central/file/901d300bb441/toolkit/xre/nsAppRunner.cpp#l2350
Bug 1000676 - Part 1: Add aboutDevices.* files. r=mfinkle
Bug 1000676 - Part 2: Add MOZ_DEVICES and register about:devices. r=mfinkle
Bug 1000676 - Post: Expose SimpleServiceDiscovery.EVENT* constants. r=mfinkle
Bug 1000676 - Post: Return existing interval from search(). r=mfinkle