Removing liftM by moving the return to lift the result of the pure function instead. Suggested on Reddit by /u/NruJaC.
Removing the Ord and Eq instances that didn't match on Node, using insertBy and `on` instead. Suggested on Reddit by /u/dave4420.
Another small change suggested by /u/dave4420 to be more Haskelly
Cleaning up runWithTwoWords by inlining unnecessary where clauses. Suggested on Reddit by /u/DR6.
Cleaning up the imports a bit, handling an IO error on the prompt gracefully.