ivory-opts: type-checker for errors/warnings.
Domain-specific typechecking that can't be embedded into the Haskell type system.

Check for:
  - dead code (after returns)
  - no return statement for non-void return types.

Added compiler flags to turn on warnings and errors.  Compiler dies on
errors by default.