[WIP] Kdodia/plots

This PR sets up a basic pattern for creating visualizations.

`plot.py` defines two functions that subclasses of PlotManager should implement: `update_source()` and `create_and_store()`. It also contains an artisanal function `push_to_server()` which minimally loads a ColumnDataSource (keyed off the document name and object id), updates the backing data, and pushes it back to the server.

`harvest.py` is a first-level subclass that demonstrates an implementation.
`harvest_rate.py` subclasses the above, overriding only `create_and_store`.

Todo:

 - [ ] docstrings
 - [x] refactor other plots to follow this model (Still need to determine bug in sort order)
 - [ ] add hooks in views.py

as per discussion with @chdoig:
 - [x] store `autoload_server` tag in plot
 - [x] accept multiple datasources