Make enum syntax match docs, make enum lists work correctly, add enum tests, enforce maximum ordinals on enum values and interface methods, change the maximum field ordinal to 16-bit to match docs (now all ordinal limits match).