A whole bunch of changes to 2D rendering

* Logging should overwrite the last log instead of appending.
* Include py_cpp for later use.
* LoadTexture, UnloadTexture, and Draw2D now take Image objects directly
instead of a GL texture ID. This allows us to grab the image's texture
dimensions from the Image class to determine how to slice textures when
a texture clipping rect is given.
* Tell PyArg_ParseArgs that we want floats, so that we don't have to go
PyLong→int→float, since we'd just be losing bits that way. It also means
we can pass floats directly from Python if we want half-pixels for any
reason.