rudimentary support for sums
param typechecking
Make typechecker compile

Support for:
- Disjoint sums (not completely working)
- Type of neutral values