massive performance improvement

Before, it would take 2 ms minimum for each frame to draw the map, even
if we're standing still and the map didn't update.

This is now 0 milliseconds, unless we move (so it's mostly 0).

I made a bufferedimage called mapbuff. There's also a boolean called
mapupdated. If we take a step, mapupdated becomes true.

Inside of DrawMap(): if mapupdated is true, it will draw the map into a
bufferedimage. if mapupdated is false, it does a return, so we don't go
through the for loops to draw the map.

Every paint(), mapbuff is drawn to the screen. Essentially, if we don't
take a step, we're just drawing a single image to the screen without
looping over the tiles to draw them individually, which is much more CPU
intensive.

Also, commented out special3 stuff since it's unnecessary right now.