Merge pull request #5 from PhilArmstrong/master

Remove ' character from cpp source file.
Spot invalid files that look like RTF.

Hopefully helps unwary users.
Add a missing pretty printer case.
Fix dot membership checking for the slow path.

This is only fired when the sets cannot be decomposed into a cartesian
product.
Reduce the number of slow field splits that are required.

This will speed up membership testing for datatypes with different
constructors.
Give a slightly different definition of isProductionOf.

I’m happier with this version since it is more obviously correct.
Improve performance of extensions/productions on complete values.
Add a function to return the list of loaded files.
Add a function to parse a collection of strings as files with includes.

This is useful for RPC.
Deduce the correct type-checker order for type annotations
Fix parsing of include files that are not newline terminated.