fix misnamed partial include tag in docs
documentation recommendations

fixes AsciiDoc preview outside Gradle build (such as in Asciidoctor.js
Live Preview) by making the following changes:

- always set doctype in book master file (semantic integrity)
- always use fallback value for attributes used for resolution
- use blank lines around include directives to avoid unseen parse errors
- use blank lines around leveloffset entries to avoid unseen parse errors
GROOVY-6916: Avoid stack overflow when rendering templates and improve the syntax for in-string rendering
minor refactor: improve test by not relying on toString() specific behavior
minor refactor: remove some spurious whitespace
Merge pull request #474 from mojavelinux/doc-recommendations

documentation recommendations
Merge pull request #473 from mojavelinux/doc-include-tag-fix

fix misnamed partial include tag in docs
Upgrade to Asciidoctor plugin 0.7.2
avoid NPE when looking for this$0 fields
GROOVY-6863: Move many methods from Collection to Iterable.

Added these methods to Iterable.

contains(Object)
containsAll(Object[])
eachPermutation(Closure)
inject(Closure)
head()
tail()
asCollection()
plus(Iterable)
plus(Object)
multiply(Number)
intersect(Iterable)
toSet()

Deprecated this method from Collection.

eachPermutation(Closure)

Did not add these methods to Iterable because GPathResult conflicts.
Read https://github.com/groovy/groovy-core/pull/444 for the detail.

toListString()
toListString(int)

I also added this method.

DefaultGroovyMethodsSupport.createSimilarCollection(Iterable)

I cannot move these methods because they exists in Object
and Groovy cannot handle properly if I move them from Collection to Iterable.

grep(Object)
grep()
collect(Closure)
collect()
collect(Collection, Closure)
find(Closure)
find()
findResult(Object, Closure)
findResult(Closure)
findAll(Closure)
findAll()
split(Closure)
inject(Closure)
inject(Object, Closure)
GROOVY-6918: GroovyDoc index-all page seems to list methods from private classes which are broken links
Merge pull request #444 from yukoba/MoveToIterable

GROOVY-6863: Move many methods from Collection to Iterable
GROOVY-6921: Closure shared variables loose inferred parameter type value
Fixes GROOVY-6924 (IncompatibleClassChangeError) and GROOVY-6926 (DGM#with not annotated)
   * Static compiler was trying to call setProperty on a class which doesn't implement GroovyObject
   * DGM#with didn't make use of @DelegatesTo, leading to special handling of "with"
   * carry implicit receiver information as well as property owner to the invocation writer
Fix unit test in order to have a constant closure class name