GROOVY-6395: Complete navigable properties for Map and Node instances

E.g.

    groovy:000> x = ['aaaaa': 1, 'bbbbb':2]
    ===> [aaaaa:1, bbbbb:2]
    groovy:000> x.a <tab>

will now complete to x.aaaaa

Node support is intended for e.g. XmlSlurper and ConfigSlurper
Merge pull request #308 from tkruse/groovy6395

GROOVY-6395: Complete navigable properties for Map and Node instances
Simpligy JDK 7 condition
Make WriteExtensionDescriptorTask incremental
Fix target compatibility for module
GROOVY-6501 Allow ASTTransformationCustomizer to define the AST Transformation to be used as if the interface was no annotated with @GroovyASTTransformation
@since should be 2.3.0; removed some commented-out code and did some other minimal cosmetic changes
updated copyright
GROOVY-5864: @AutoExternalize doesn't create no-argument constructor
GROOVY-5864: @AutoExternalize doesn't create no-argument constructor (one more test)
Merge branch 'master' into GROOVY-5924

Conflicts:
	subprojects/groovy-nio/src/main/java/org/codehaus/groovy/runtime/NioGroovyMethods.java