This is based on pygames array_backed_grid.py.
Tutorials used:
- http://www.policyalmanac.org/games/aStarTutorial.htm
- https://en.wikipedia.org/wiki/A*_search_algorithm#Pseudocode
- http://jmduke.com/posts/making-caves-with-cellular-automata/
- http://pcg.wikidot.com/pcg-algorithm:cellular-automata
left click to set the starting coordinate
middle mouse to set nodes that are not passable (red ones)
right click to set the end coordinate
it will highlight the taken path in yellow