Removed unnecessary BufferedWriter/BufferedOutputStream as described in GROOVY-6314 issue
Added methods:
- void append(Path file, Reader reader)
- void append(Path file, Reader reader, String charset)
- void append(Path file, Writer writer)
- void append(Path file, Writer writer, String charset)
Added @since javadoc annotation
GROOVY-6554: Improved serialization performance of JsonOutput
GROOVY-6633: In each JsonOutput.toJson method added check for null
Updated GroovyDoc to use new templates
First experiment for a @Trait AST transformation
Trait experiment, phase 2:
   * replace delegate approach with "multiple inheritance like" approach
   * support for fields in traits
   * helper class now uses static methods and initializer method
   * if fields are defined, a helper interface is defined too
   * NO SUPPORT FOR FIELDS ON LHS OF ASSIGNMENTS YET
   * no support for trait inheritance
Trait experiment, phase 2:
   * make sure generated getters appear first to avoid potential NPE
Code cleanup for trait AST transformation
   * remove fields from helper class (not needed anymore)
   * remove the helper abstract method annotation (replaced with good old abstract methods)
   * do not generate anything for synthetic methods
Trait experiment: initial support for properties and assignments
Trait experiment: initial support for closures defined in traits
Fixed IncompatibleClassChange error with precompiled traits
Adding a trait keyword

Conflicts:
	src/test/org/codehaus/groovy/transform/TraitASTTransformationTest.groovy
Make use of the trait keyword
Remove unused imports
Move one static inner trait to top-level class
Fixed visit of declaration expressions in trait
Fix generics error with traits
Safer traits implementation:
   * prevent use of protected/private methods in traits (not possible with a dynamic runtime)
   * make private fields remapped in weaved class
   * rename "$this" to "$self" for readability
   * moved transformation to its own package
   * extracted ReceiverTransformer
   * fixed compatibility with @CompileStatic
Allow overriding properties from traits