Working

I've had a chance to test a bit more and debug. Seems to be working nicely on all of the examples I tested.
I could use some help with gradients, i'm not sure what the best way to proceed is. Please see my comment on the commit.

After gradients, if we add text and images then we have a pretty full featured backedend. :)