Future-proof the TC' monad

In GHC 7.10 Monad instances will need to implement Applicative
and MonadPlus instances Alternative.

Just reuse the corresponding functions on the Monad/MonadPlus instances.

Fixes #1181
Make totality a warning until compiling

Now, totality errors will not prevent loading a file. This means that
features such as :missing and :addmissing can be used to fix the
problem.

However, the compiler will fail if there are totality errors, just as it
does with metavariables.
Show more errors

The totality warnings mean that elaboration doesn't stop when it sees a
totality issue. Allow both issues to be reported in this test.
Update for totality warnings

Now, totality discrepancies prevent compilation. Add partial annotations
to totality005 to make it compile.
Don't try to compile a test that doesn't have `main`

Instead, just --check it.
Update test for totality warnings

Now, all totality problems are shown. Update test accordingly.
Merge pull request #1200 from melted/tc

Future-proof the TC' monad
Allow %name to take an infix name as an argument.

Fixes #1191.
Add totality warnings to CHANGELOG
Make ':doc' say 'No constructors.' when a data type has no constructors.
Merge pull request #1206 from paulkoerbitz/fix/1187-doc-no-constructors

Make ':doc' say 'No constructors.' when a data type has no constructors.
Remove stale .ibcs
Documentation for primitives

Allow primitive types to be entered into :doc. Also add their
documentation to IDESlave annotations. This stops :doc String from
throwing an error.

Fixes #1207.
Merge pull request #1205 from david-christiansen/issue/1191

Allow %name to take an infix name as an argument.
Merge pull request #1208 from david-christiansen/primitive-docs

Docs for primitives
Added a proof that (x ++ (y ++ z)) = ((x ++ y) ++ z) for Vects
Merge pull request #1210 from DanielWaterworth/vect_append_associative

Added a proof that (x ++ (y ++ z)) = ((x ++ y) ++ z) for Vects
Merge pull request #1204 from david-christiansen/totality-warning

Make totality a warning until compiling