Compiler: Split classes into anonymous and named. Named classes are now always statements (ie even function local named classes), and thus no longer require any terminating semicolon. Anonymous classes are now only allowed in expressions. This change implements the behavior that most already assumed.