RoboBlender : an annotation processor for RoboGuice to boost performances

Subsumes : 

* https://github.com/roboguice/roboguice/pull/192
* https://github.com/roboguice/roboguice/pull/183
* https://github.com/roboguice/roboguice/pull/182
* https://github.com/roboguice/roboguice/pull/181
* https://github.com/roboguice/roboguice/pull/179

Also, and more surprisingly, it solves : 

* https://github.com/roboguice/roboguice/pull/176
* https://github.com/roboguice/roboguice/issues/200
* https://github.com/roboguice/roboguice/issues/111

Implements a new annotation processing system for RoboGuice to decrease app startup time, RG runtime and memory footprint of RoboGuice 3.0.
A full presentation of the feature is available on [speaker deck](https://speakerdeck.com/stephanenicolas/blender-boosting-guice-with-annotation-processing).

The branch contains a nested subtree of Guice. See HOWTO-SUBTREE.txt for maintenance.
The guice fork branch is available directly on GH : https://github.com/stephanenicolas/google-guice/tree/snicolas-mburton-blender

This branch should be rebased to current master. Please read README of branch before merging.

The branch needs a little more work before or after merge. RoboBlender is not constrained by roboguice check_style yet. But it contains already enough changes and this can be done in a near future.

-----

TODO summary : 

* [ ] find a solution to include our own Guice fork and its artifacts in release
* [ ] apply checkStyle and other RG quality tooling to module RoboBlender
* [ ] rebase on current master
* [ ] beware of artifacts versioning when merging




This doesn't seem right.  maven should know about the dependencies, so the top-level pom should build guice before building roboguice.  We devs and build servers shouldn't have to do anything special to build