Simplified some lookaheads and grammar rules for
lambda expressions and other internal expressions.

Names do not expect lchar '.' but '.' for simplfied naming.
Improves parsing of function application expressions
Comment on grammar fix [ci skip]
Remove Ord constraints from SortedMap toList
Remove ":m" as a shortcut for ":module" in help as it
is used for ":metavars".
Remove argument for ":metavars" as it doesn't take any.
Add Foldable for SortedSet
Workaround Travis skip of last commit.
Add a bunch of docstrings to Prelude.Strings

Didn't manage to create one for pack due to the interpreter
not knowing which foldable instance to use for [1, 2, 3].
Further simplification of expression parsing for better error handling
such as lists and constant literals.
Add scanl for Vect.
Uncomment truncate.

Also modify some types to help with unification.
More operations on lists
Add instance Uninhabited _|_
Improve error messages for list
Add ASTUtils.
Fix inaccessibility elaboration.
Make the rest of erasure use ASTUtils.
Add comments.
Use ASTUtils in Compiler.hs.
Fix name confusion.