Initial integration of abstract rendering

Abstract rendering framework integration working for count-based analysis.  Includes slots for aggregator, info, chains of shaders and a few basic shaders. 

Notes: 
* Requires separate installation of abstract rendering, but it prints an error if the import fails, including instructions for how to download/install from the main AR repo
* Axis ticks are wrong...just plain wrong.  Don't trust them when using AR.
* Merged in master at 2:46am on 13Jun2013.


Run examples/plotting/server/abstractrender.py yields....
![ar](https://cloud.githubusercontent.com/assets/2963989/3267190/51361f2e-f2c6-11e3-80b3-66f5833868a5.png)

I added a comment to the file.

The type of the reserve value depends on the type of the values inside of
the image property, so statically specifying requires either generics or
dependent types.


On Fri, Jun 13, 2014 at 4:44 AM, Mateusz Paprocki <notifications@github.com>
wrote:

> In bokeh/glyphs.py:
>
> >      dilate = Bool(False)
> >
> > +    #TODO: Consider converting palette in to a first-class object, then wrap the color list and reserve values into it instead of here
> > +    #Reserve represents a color/value outside of the normal range.  Commonly used for 'background'
> > +    palette = DataSpec
> > +    reserve_val = Any(default=False)
>
> What's the expected specific type here? If this can't be expressed at this
> point, please write a comment so that we can implement this in future.
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/ContinuumIO/bokeh/pull/707/files#r13742364>.
>