Improve auto-brightness handling

- Add a setting to control the auto-brightness algorithm responsitivity
- Make the algorithm react much faster when the ambient brightness
  increases quickly, e.g. when receiving a call in bright sunlight.

Change-Id: Ic608901c476609dde69cae982228c09567140a83
FW : Allow user selection of Font Size

ps 1:  This re-structures a lot of the way icons & layouts are sized.
It allows System Icons, Notification Icons, etc. to scale according
to the size of the statusbar.  StatusBar now sizes itself based on
the height of the Font (which is user selectable in RC).

This needs a lot of testing, as I've made substantial changes to the
way the Statusbar.  Also, While everything is 'working', the alignment
of the Textviews alludes me.  All textviews are being aligned at the bottom
of the StatusBar rather than centering like they should.

PS 2:  Fix the issue with StatusBar robbing touches at boot.
Fixed windowing size update in PhoneWindowManager.
Some of the icons still don't scale exactly right,
and of course the TextViews continue to taunt me.

ps 3: Re write some of the scaling of images and add some padding.
   Create a StatusBarHelpers sub in core.util.aokp for re-using some routines.

ps 4:  Solved initial sizing issue (at boot or change) and everything
	seems to be aligned properly.
	Note that icons will only scale up to their source size.  So
	themes that provide HQ/large icons can benefit from larger
	font sizes, but some themes (including stock/system) will
	show increases in fonts and Notification Icons, but not
	the SystemIcons (right side)

ps 5: Adjust layout to elimination notification cutoff

ps 6:  Really fix layout this time.
ps 7: add some padding between notification icons
ps 8: adjust statusbar padding to try to remove small line when no
      Font has been set.
ps 9:  Add some padding below notifications.
ps 10:  Fix notification overlays and tweak notification paddings.
ps 11:  A few more refinements in sizing
ps 12..15 : more dynamic scaling & padding adjustments
ps 16: set scaling as close to Stock as I can get it.  Fix scaling of
	notification background on smaller sizes
ps 17: Set system icon widths so that scaling looks more natural.
	re-aligned signal text/wifi text.
ps 18: Use correct default font size for text
ps 19:  Re-do logic for font size on ticker text.

Change-Id: I5f9e99930210d3d91cda3ef167ad42993c261816
Signed-off-by: Zaphod <mwilson@acesappraisal.com>
Reduce observers in SystemUI: StatusBarIconView

Currently, for each status bar icon view there is a observer that
listens for changes of STATUS_BAR_NOTIF_COUNT. With one
notification usually having one or more status bar icons
you may end up easily with 10+ more observers for ~5 notifications.

With this commit the internal observer class becomes a singleton.
This means there is now only one observer for all status bar icons
and additional binder calls on new notification are avoided.

See "dumpsys content"

Change-Id: I7ca6481fe43e87c34b19d7b71e531cce93cf80ef