add function to create a Substitution
Function to append strings to names
Add typeclass (and instances) with one function `apply' that applies a substitution
Continue work on generate and generate'

* Change EGState to include information needed to generate an unique
  type variable. This is needed in randomMatching where the type of
  the constructor returned should only contain unique type variables.
  Also add TODO about making EGState into a data type.

* Implement generate' based on the pseudocode in the API suggestion.
Update the test file with a generation test.

* This test currently fails with the current language and most seeds!
  Seems to be a bug in both `findAndUpdate' and `apply'.
Update .gitignore