Reduce Grapher code duplication

What's here:

* A good first step in consolidating common grapher concerns.
  * graphers are now built by methods in the subclass, and only need to set title, data, and output_filename, plus any customizations
* Plus, in testing, discovered the cane metric didn't have a gchart gapher

I think there's room for more improvement here

1) the :graph! method really just writes a javascript file used by the graphing engine. it's poorly named
2) do we even need the google chart grapher? The Cane metric was missing and no one seemed to notice.
3) building the js data can be reduced further, maybe a sort of presenter?
4) The way the grapher modifies itself by including the GchartGrapher module to run with google charts is pretty hacky.  There be dragons