Rename TypeNameWithArguments to BaseType, work on #27

* TypeNameWithArguments → BaseType
* add new TypeNameWithArguments
* adapt to this change everywhere else
CeylonExpressionVisitor → CeylonExpressionTransformer

Make CEV a Transformer<String>.
Reintroduce type constraint for abstract backend tests

I think I removed that because of the JType|[JType+] trouble we removed
in #27, but I’m not sure.
Simplify Editor implementation (use NarrowingTransformer)
Add SimpleType, QualifiedType
minor