[ ] write a monolithic header file
[x] refactor example code using composition
[x] remove draw class entirely
[x] create shader classes with polymorphism
[x] optimize shader/primative performance (repeat myself!)
[x] finish implementing gradient shaders to primatives
[x] implement buffer shader
[ ] implement more primatives
[ ] fix off by one with buffer shader (and probably certain primatives)
[ ] fix memory leak and arrays in stack issue
[ ] fix shader offset limitations and headache
[ ] maybe add blitter primative?
[ ] support for lower color depths
[ ] support for transparency
[ ] 15bpp + dither "shader"