Fix textures (and polygons doing that)

Textures had the VertexLitGeneric shader, which did not play nicely with
render targets.
Textures now use UnlitGeneric shader, which basically ignores lighting
and makes textures full-bright.
Also, a texture was set when the render hook got fired, so I added a
draw.NoTexture()

This also fixes polygons, because they were textured and there was no
way to unset the texture. (And setting it would result in the wrong
shader)

setTexture(nil) was throwing errors, I made it use draw.NoTexture() to
reset the current texture.
Fixes #48