Bug 976986 - SettingsListener should have unobserve() method
change layout manager instantiate place to solve app_window dependency
Merge pull request #17111 from gasolin/bubble-982033

Bug 982033 - change layout manager instantiate place to solve app_window dependency, r=alive
Merge pull request #16947 from dwi2/bug976986

Bug 976986 - SettingsListener should have unobserve() method
Bug 897352 - [gaia build system] Transition to a build_stage for assembling apps
Modify commit accroding by first round review
WIP 3/6
fix manifest error for keyboard app
minor fixes
fix preload apps issue
Remove remain BUILD_DIR
Add comment for rule |$(STAGE_DIR)/keyboard|
use CURDIR instead of APP_DIR
use build.js instead of Makefile for gallery, music, music2
fixing issues for 3rd round review

Summarize for these changes:
1. Move variables definition from Makefile to build/common.mk to unify
   run-js-command for app.
2. assembling APP_DIR, STAGE_APP_DIR in xpcshell-common.js
3. remove all assembling APP_DIR, STAGE_APP_DIR from each app