Performance improvements

Every time HUD was redrawn (basically every keypress inside of a
battle), NPC data would be reloaded. I moved NPC data loading within HUD
into its own method, which gets called inside of step() in RPG.java.
Right now, it's inside of the if statement for maptracker==1, so NPCs
only get loaded when you go into the town.

I added an FPS counter and paint timing to the bottom right corner. FPS
counter uses time between paint calls to get frames per second. Other
value shows how many milliseconds it takes to do one paint call.

I noticed the main map was taking 20 ms or longer to draw (with an FPS
of around 40), but the town was taking 1-2 ms to draw (with an FPS of
333-500!). I figured this was due to the original map being so large. It
gets drawn even if you can't see most of it on your screen. I changed
that.

Now you can get 300-500 FPS in the main map as well. On top of that, I
put in a Thread.sleep(1/FPS) to limit the FPS. 500 is unnecessary...your
monitor can't display above 60, so putting it down to 60 reduces CPU
usage by 40%.