Add DrawerLayout and ViewDragHelper classes found in the new support library.  These classes have been modified to work with the current framework and no need for any support or compat classes.

Summary: Change-Id: Ib57f37fadd5c01efef3188b8e2b906444d870fbf

Test Plan: It builds, no apparent issues

Reviewers: Mustaavalkosta, michyprima

Differential Revision: http://review.codefirex.com/D128
Introducing the PreferenceDrawerActivity which makes use of the new navigation drawer UI google has introduced in updates to many of their apps.  This relies on headers which are displayed in the drawer and preference fragments as the main content.

Summary:
Patch Set 2:
  Create drawable backgrounds for the drawer.

Patch Set 3:
  Only access the action bar if it is not null.  The setup wizard does
  not have an action bar and will cause settings to receive a NPE.

Change-Id: Ifddd889daaa5bdea01fef5c104536a0189ad93bf

Test Plan: This is awesome, doesn't break the build, or have any apparent issues

Reviewers: Mustaavalkosta, michyprima

Differential Revision: http://review.codefirex.com/D129
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
Merge remote-tracking branch 'aokp/jb-mr1' into jb-mr1