Factor gradients out of Query

*Ok i figured out how to get this pr to the correct repo. So please disregard any comments
for the pr to andygill/blank-canvas*

I think this can be merged.

The eventual goal is to provide the ability to output as much standalone javascript as possible.

Since the main difficulty is queries, we start by shrinking them to the absolute minimum. 
I'll do this in stages, here we remove gradients since the only thing that gradients were getting from the
browser is a unique id and this can easily be handled on the haskell side.

The next step is to factor out images and patterns, I think? this is possible although we made need a library like Juicy-Pixels to read the image width and height. I might need a bit of help with the js though as I cant seem to figure out how to load the image without displaying it.You might want to consider detaching this repo the one at you personal github account.
You can do that by sending github support an email that says:

"Can you please convert the following repo to normal mode, i.e. delete the fork dependency."