Added more types of expressions, function defs, function calls.  Cleaned up error handling.