Issue #1284: Add a test
Issue #1284: Use a Visitor to figure out the local ids used for local interface naming before we try to use those local ids, since a local interface may be declared after its first use.
Issue #1284: Test
Issue #1284: Rename noteDecl() to something more sensible, now that it is no longer concerned with local ids
CeylonVisitor: Exchange some tabs for spaces
Issue #1286: ClassDefinitionBuilder: Accessors for the containingClassBuilder
Issue #1284: AttributeDefinitionBuilder: When creating a toplevel attribute, setup the ClassDefinitionBuilder first, so that it has the correct ClassDefintionBuilder.containingClassBuilder.
Issue #1286: Add a test.
Issue #1286: Of course, things like object arguments and setter arguments should be considered local.
Issue #1286: LocalIdVisitor: We need to visit all NamedArguments because they have a scope too
Issue #1286: Decl: rename isLocalScope() -> isLocalNotInitializerScope() so its non-consideration of initializers is more obvious
Issue #1286: Make the LocalIdVisitor a member of Naming.
Issue #1286: Rename Decl.isLocal() to Decl.isLocalNotInitializer()
Issue #1286: Add a Decl.isLocal() which really does what it says on the tin, fixing callsites which were basically testing for this.
Issue #1286: Fix a .src changed bit the fix for #1286. Note how we don't actually use some of the ids we generate now. This is because the logic used by the LocalIdVisitor isn't quite the same as Naming.makeDeclName().