Binary instance for Err + binary fixes

Add a Binary instance for Err, and add missing cases to other Binary
instances. The file will now fail to compile with GHC if a Binary
instances is missing a new case.
Support type errors in docstrings

Now, code blocks that are declared to be Idris code (with the Markdown
language specifier) are type checked, and any type checker or parser
errors that occur are retained and displayed to IDEs.
Make all code examples typecheck

This gives them the > notation when printing.
Merge pull request #1655 from david-christiansen/docs

Retain parser and type errors in documentation code samples