Preliminary version of type-directed search
Merge remote-tracking branch 'upstream/master' into typeSearch
Now we can handle typeclasses!

Note: The method by which we match typeclasses is ugly and brittle,
and ought to be changed eventually.
Merge pull request #1263 from bmsherman/typeSearch

Add type-directed search functionality (like Hoogle)