QuickSettings : Battery initial status

Battery tile upon being added relies on a battery level changed call
to update its status. Thus if upon adding, the battery level is not changing
or till the period when it updates, the tile shows an unknown state.

This patchset resolves this issue by making the controller store its last received value
and distributing it to the tiles when they register for changes.

https://jira.cyanogenmod.org/browse/CYAN-1374

Change-Id: Ia2e887e545430ed02c179a3c8f4b7e269a4817c8
HALO: Add master switch to disable Halo (1/2)

-Port master switch from @Der-Schubi.
-Fixed Halo not showed at first notifiction pulldown.

Change-Id: I51d7ceab86303e1d322b4d403e31ceb3173d3669
Don't assume any ringtone is present on external storage.

If that assumption doesn't hold true, the user will lose his ringtone
and won't know why.

Change-Id: I89409e1351792d020c5458f5104f4bb9f2a040f2
Merge branch 'cm-10.1' into martincz
Merge "Don't assume any ringtone is present on external storage." into cm-10.1
Merge branch 'cm-10.1' into martincz