classes update

a lot of this stuff needs fixing
collision! (kinda)
code tidying, added some debug

collision seems to be reported for every tile?
more tidying

collision is still broken?
WHAT AM I DOING

WHY AM I DOING IT

er yeah so i dicked around for ages, moved bits and pieces around, tried
to get some grand ideas made then deleted it all, after 2 hours actually
got around to getting the collision working :p you need to move the
rectangle appropriately! bitmasks didn't seem great, they need to be
bigger. both had problems.

there are two things of note in this commit, the rest is me jerking off,
hence putting it in a separate branch:
-debug code in graphics.py to check what area is actually being
processed - i make the image a red surface and then blit it if it's been
processed. Highlights exactly what is being processed, was useful for
narrowing things down!
-in the main, i'm also checking for collision with background tiles.
this is just for cleaning up purposes.
-in objects, the actual fix - adding in rect.x and rect.y with the
movement. also did a similar thing in tiles, though in the dicking
around i moved a bunch of stuff between map and tile so it might be
harder to spot.

-you can realistically IGNORE all other changes, unless you like them.
it's 3am code
testing out different collision
i typed something wrong
Merged with 3AMCoding