Add TokenFactoryImpl
Make all abstract Node (sub)types enumerated types

Every abstract class in ceylon.ast.core should be an enumerated type, to
avoid people giving us bogus nodes. Of course, many of the node types
aren’t done yet, but making them enumerated now has advantages: It means
we can already switch on them without an else clause, and these switch
clauses will break when we add a new subtype, which means we can’t
forget to update them (as has happened a few times in the past).
Fix missing tokens in RedHatTransformer
Update for StringBuilder removal

Damn, I had hoped to keep ceylon.ast.core free of any module imports :(
Reformat source code after ceylon/ceylon.formatter@8eb0a8a