Throw an error on a module inclusion cycle, and add a test.
eliminate an unnecessary method.
Rename exception.
Re-work a loop to better use the stack of path elements, and fix error messaging.
Forbid modules who extend from non-Object class types.

Closes #188.
Move back to optional dependency for the dagger-compiler.

This reverts commits 2014bce8e79f7bdba4fcaa4f581e6189543ded00
and f784b96520d0a408ac76b5b187e7bb9dc5c32ff1, with a few other
changes in the documentation and IT tests added afterwards.

Closes #194
Do not fail builds due to unforseen problems in GraphVizualizer.
Merge pull request #196 from square/jw/composition

Forbid modules who extend from non-Object class types.
Merge pull request #198 from tbroyer/dagger-compiler-optional

Move back to optional dependency for the dagger-compiler.
Merge pull request #197 from square/jw/graph-generic-fix

Do not fail builds due to unforseen problems in GraphVizualizer.
Merge pull request #187 from cgruber/catchmoduleincludecycles

Handle module inclusion cycles without stack-overflowing the javac.
Point download links at Maven Central.
Merge pull request #199 from square/jwilson/downloadlinks

Point download links at Maven Central.
Revert missed integration test to old dagger-compiler inclusion strategy.

Closes #200.
Merge pull request #201 from square/jw/fix-it-test

Revert missed integration test to old dagger-compiler inclusion strategy.
Remove Android manifest plugin.

It is not provided enough value to justify maintaining in its current state.

Closes #95.
Merge pull request #204 from square/jw/a-swift-clean-death

Remove Android manifest plugin.
Update coffee example URL
Merge pull request #208 from Nilhcem/master

Update coffee example URL
Forbid Provider and Lazy as provides return type.