Adding machinery for a cleaner implementation.
Pulled inferPrincipalType's Fresh monad to Main.
Working on a separating the solver from algoW.
Added Church booleans example.

We clearly need polymorphism.