==========================================

       appcompat themes structure

==========================================

The themes structure in appcompat is complex since we
need to deal with attributes and styles which are available
at differing platform versions.

The structure is as so:

<- denote inherits from.

---------------------
Fourth level themes (Platform)
---------------------
These are the base themes and allow us to switch out the framework base
theme automatically. These should setup the framework theme ready so
that they are the theme is mostly the same on all platform versions.

Example:
values-v11/
Platform.AppCompat    <-   android:Theme.Holo


---------------------
Third level
---------------------
Platform specific themes which inherit from the previous platform version. These allows us
to build up the theme across platforms. These themes do most of the work.

Example:
(various)                         values/                        values-v21/
Platform.AppCompat    <-    Base.V7.Theme.AppCompat   <-   Base.V21.Theme.AppCompat


---------------------
Second level
---------------------
There are the themes which are pointers to the correct third level theme.
They can also be used to set attributes for that specific platform (and platforms up until the
next declaration).

Because of this, every time there is a third level theme set, there should be a second level
theme pointing to it. This is so that devices do not use themes from newer and unavailable
platforms.
 
Names: Theme.Base.AppCompat, Theme.Base.AppCompat.Light and Theme.Base.AppCompat.Light.DarkActionBar

Example:
values-v21/
Theme.V21.Base.AppCompat   <-  Theme.Base.AppCompat

---------------------
Top level themes
---------------------
These are the themes to be used directly by developers. These inherit from
the second level relevant second level theme below.

Names: Theme.AppCompat, Theme.AppCompat.Light and Theme.AppCompat.Light.DarkActionBar

Example:
values/
Theme.AppCompat    <-    Theme.Base.AppCompat
