Solution candidates

GreedySolution is a simple solution that looks for the next nearest node
GreedyManhattanSolution does the same thing, but approximates the distance between nodes using the Manhattan method.
GreedyHealingSolution takes the best of the previous 2 solutions and attempts to "heal" it incrementally, one node at a time
Fixed a bug in Main.java that causes NullPointerException