Begin removing BNFC. Add lexer.
Add parser
Finish parser
Now it compiles
Fix a bug with layout
Rewrite TypeChecking.Expressions
Rewrite TypeChecking.Definition*
Bug fixes
Merge branch 'rbnfc'

Conflicts:
	src/TypeChecking/Context.hs
	src/TypeChecking/Definitions/DataTypes.hs