Updated rakefile to clean ~ files also
Updated Code Generation code to be more terse
Updated scanner to put common error messages in their own functions.
Whitespace, typecheck