* Use the same code style everywhere (mostly about spaces after function names) * Make sure program & shaders are deleted properly if program creation fails * Remove gfx::vertex, setup mesh using attributes directly * Design affine transforms in geom & use them instead of matrices when appropriate * Create an 'app' module that simplifies application creation * Implement pixmap font rendering * Create a simple generic primive painter * Design resources system * Design logging system * Design ui system