Fixed a number of bugs. All but 1 of official test cases passing, and all but one of ours, because they both conflict with what the grammar defines