Fixes layout parsing of operators
Fix SimpleParser ambiguous type error
Induction now works on types with parameters
Add DragonFly to config.mk
Add more ifdefs for DragonFly
Induction works for all types with eliminators now (some eliminators
still need fixing) including those with indicies.
Improved the parsing of `-XExtension` flags.

The `Read LanguageExt` instance is now used to convert strings into
`LanguageExt`s, and passing -XNonexistentExtension results in an error
instead of attempting to load the file "-XNonexistentExtension".
Improve mid-do-block cases

By assuming that any missing type is () (which is probably what was
intended anyway). This works by filling any holes with () if they happen
to be patterns in generated case blocks.
Merge pull request #763 from ahmadsalim/feature/parserlayoutfixes

Fixes layout parsing of operators
Merge pull request #764 from puffnfresh/simpleparser-type-error

Fix SimpleParser ambiguous type error
Merge pull request #766 from markuspf/dragonfly

DragonFly support
Merge pull request #767 from ahmadsalim/feature/inductionimprovements

Allows induction on more complicated data types
Merge pull request #768 from trillioneyes/extension-checking

Improved the parsing of `-XExtension` flags.
Add Eq instance for Either
catch exception thrown by tryLoadLib on Windows

`tryLoadLib` uses `loadLibrary` to load DLL on Windows, which throws
`IOException` upon failure such as file not found. Currently we only
checks whether the return value is `nullPtr` or not.

This commit adds a handler that tries to catch the `IOException` thrown
by `loadLibrary` and returns `nullPtr` instead.
Add tab completion for "induction" in prover
Merge pull request #772 from david-christiansen/either-eq

Add Eq instance for Either
Merge pull request #773 from suhorng/fix/master/catch-windows-tryloadlib-exception

Catch exceptions thrown by tryLoadLib (on Windows)
Merge pull request #774 from david-christiansen/induction-completion

Add tab completion for "induction" in prover
Make note of unapplied unifiation solutions

i.e. when an argument is given explicitly, but can be solved by
unification, make sure that the given argument and the inferred argument
themselves unify. Keep track in the ProofState structure, and unify when
'solve' tactic is applied for the given hole.

Fixes #765