A* path finding algorithm

(1) drag to set obstacles, (2) right click to set start and destination.

View source code on GitHub.