Add simple types: Boolean and Function
- The Arbitrary instance for Term currently uses the Arbitrary instance for Type, which obviously produces ill-typed terms.
- Typer is not yet implemented.