Continued Pathfinding Work

- Fully implemented A* algorithm
- Map is now split into nodes
- New temp map to help test pathfinding
- Lots of new getNode/setNode functions
- Grid class for creating a set of nodes from the game surface

Notes:
- Game startup and map loading is significantly longer. I don't see a
way to avoid this in the near future
- Leaving the base screen area (x=900, y=650) will cause a crash. This
is because of the way nodes are loaded initially. This will probably be
the biggest hurdle in completing pathfinding.
- Monsters don't have any movement animation, and they path along very
fast. This is because they are just instantly set to the next node, this
will be changed soon.