fix up the tile shaders a bit
add texture.cpp and make image do only image stuff

and texture will be an actual GL texture wrapper...i'll also want to make
TextureArray, I'm thinking. That'd be nice to have for my tile renderer,
since I need to use GL_TEXTURE_2D_ARRAY to store every tilesheet/block
type.