Bug 972701 - [Camera] Stop Icon overlaps with Camera Shutter icon while recording video

Conflicts:
	apps/camera/style/controls.css
Bug 972804 - [Camera] Separate settings for camera and video flash
Bug 974361 - Memory average assumes the array of measurements always exists
Bug 947617 - fixed clock hand transform to invoke the GPU
bug 939809

* added StackManager.snapshot which gets a copy of the array of applications in the stack
* updated CardsView to get the list of and current app from StackManager
* made StackManager ignore the System application explicitly
* minor changes to help with jshint later
* added 'position' getter on stack manager
* added several tests to ensure that the position is current after stack has changed
* moved apps used in cards view test into a variable used to populate running apps as well as the stack
* removed old user ordering code (web os model task manager...) since it's incompatible with our new model
  and the code does not have any tests and it hasn't been enabled in a long time. We're moving on!
* detect cardsview being dismissed and re-enable edge gestures
* created a local help function to enable/disable edge gestures based on events received
* select currently active application card in cards view when cards view is shown
  if no active application, then default to stack position.
* cards view uses 'position' in stack internally, updated code to stop using old 'origin' name to avoid confusion.
* cards view now broadcasts 'newStackPosition' when it's closed and the stack position has changed. newStackPosition contains the position of the application that will be in the top of the stack.
* made edge swipe detector listen to 'cardviewclosed' with new fancy newStackPosition, this also prevents edge gestures from being re-enabled when we go back to the homescreen.
* made stack manager use newStackPosition to move application that was displayed from cards view to top of stack.
* fixed cards view unit tests
* prevent system app from appearing in the application history stack.
* updated 'runningApps' var name to 'stack' in cards view for clarity
* updated 'displayedApp' var name to 'currentPosition' in cards view for clarity
* added getter/setter for position in stack manager, with tests
* added getter/setter for lifecycleEnabled in edge gestures as well as tests for it's usage
* added test to stack manager to ensure that system app does not show up in stack
* alignCurrentCard after we remove one.
* fix gaia ui test.
* use 'position' getter/setter everywhere in StackManager.
* added test to ensure that internal _current position in StackManager doesn't accidentily become a string.

r=etienne
Bug 960325 - Move Homescreen Background into Homescreen App. r=alive,
crdlc
Bug 901216 - [l10n.js] make consoleWarn string concatenation-free
Also updated consoleLog string concatenation-free
Bug 973876 - Remove the admin permission request.
Merge pull request #16435 from evanxd/bug-973876

Bug 973876 - make test-integration shouldn't ask for admin password
Merge pull request #16500 from changm/bug960325

Bug 960325 - Move Homescreen Background into Homescreen App. r=alive, crdlc
Revert "Bug 974906 - Xfail test_camera_capture_video.py because of Bug 974851."

This reverts commit 6773129d877db48f3183782a1aefea4091393f1a.
Bug 973407 - [Messages] Reduce reflows when element heights are updated

1. remove updateElementsHeight() call in messageComposerInputHandler(),
since updateSubjectHeight() already calls it

2. in cancelEdit(), only call updateElementsHeight() if in edit mode

3. in updateElementsHeight(), move code to set input width to 'auto' up
to avoid extra reflow if layout has changed prior to call

Added unit tests for cancelEdit().
Bug 973661 - [FTE] In FTE, when skipping PIN screen, there is no option to get that screen again when pressing back
Merge pull request #16451 from stasm/974361-arr-undefined

Bug 974361 - Memory average assumes the array of measurements always exists r=hub
Merge pull request #16522 from arcturus/bug-973661

Bug 973661 - [FTE] In FTE, when skipping PIN screen, there is no option to get that screen again when pressing back
Bug 929027 - [Messages] Multiple image sharing from Gallery to Messages r=schung

Updated review comments
Merge pull request #16455 from JonHylands/jhylands-947617-clock-power-usage

Bug 947617 - fixed clock hand transform to invoke the GPU. r=mcav
Revert "Bug 929027 - [Messages] Multiple image sharing from Gallery to Messages r=schung"

This reverts commit fdc8e4beba5c8279f32083bc4e702348ef22f211.
Merge pull request #15914 from nullaus/task-switcher

Cards View Goodness!
Revert "Merge pull request #16455 from JonHylands/jhylands-947617-clock-power-usage"

This reverts commit 7e1c255c20b64d09ef0e021b8b9d7377840d4061, reversing
changes made to fdc8e4beba5c8279f32083bc4e702348ef22f211.