Major commit: revamps, rehauls, tweaks

Refactored a lot of this code to be more extensible.

    (Major commit) Polishing, abstracting, extracting, opening, refining.
 
    Color.inc changes:
      - 'engine' is now 'replacement methods'
      - 'schemes' is now 'premade schemes'
      - 'fill' in images, the first array element will be the image extension to fill with.
        so far we go 'solid' and 'y-gradient'
       
    Revamped schema:
      {color} - Stores theme info
        |-----------------------------
        | id  name  type  fields        replacement methods   premade schemes   images  stylesheets ...
        |       default scheme  reference scheme        blend target    preview
       
      {color_schemes} - Stores scheme info
        |-----------------------------
        | id    name    theme   hex     path    stylesheets     images  screenshot      logo    status
       
    The idea of keeping an 'extra_attr' and a 'value' to store the lion share of our stuff was getting rather ridiculous.

    Revamped extension system:
      - You can now add your own custom fill methods!
      - Files now being included in color/extend/EXTENSIONTYPE/FILE.inc
        so extend/fill/solid.inc is the solid fill.
      - The function inside the extension that's used is referred as:
        _color_extend_EXTENSIONTYPE_EXTENSIONNAME(). So solid.inc is:
        _color_extend_fill_solid.
      - Also, if you want to use a dash between words in your ext name,
        do so, be sure to use dashes in the color.inc fill arg and the
        extension filename. Inside the function we want undercores.
      - The markup for fills is now:
        array('FILLEXTENSION', x, y, width, height, color1, color2...) (you can list
        unlimited arguments after.
       
    - User scheme selection has been split into a separate modules
    - Overhauled cache system
    - Overhauled color_set_scheme() and color_get_scheme()
    - Overhauled batch process
    - Overhauled and simplified color_get_scheme and color_get_theme system to use references
    - Refined and simplified color_scheme_form() interface and its CSS
    - New color_get_theme_extras() which only gets called for webmaster's on certain pages to prevent extra queries
    - Nista has been completely remade. It is now 100% based off Zen, prior to this
      it was only in some parts. Additionally, we're using the much refreshened Beta 3 release.
    - Removed unneeded, superfluous functions (such as deprecated color_get_reference())
    - Changed names of buttons on forms, 'Edit' is now 'Modify'.
    - Switched position of darken/lighten on scheme editor
   
    To do:
      - Open up functions to be more API friendly
      - Rewrite other themes off Zen theme
      - Redoxy this code -- much has changed!
      - Update other variables in code to assure our $scheme and $theme variables are consistent
        throughout the code. (these variables are arrays of key data, in keys)
      - TWEAK!