Add RunWith annotations so Dagger can build from source inside customers' codebases and run in non-maven hosted test runners.
Rework providesprocessor to generate ModuleAdapters even when no Provides methods are present.

This averts needing to fall-back on the reflection back-end in the case of no provider methods.  Also adds some tests for stateful modules used in extension graphs, and fix some error text related to module instantiation.
Accept dagger.Module in the processor, and don't assert that this processor has completed all processing for dagger.Module.  Also fix some nits.
fix checkstyle violation.
Fix some exception text, add a better thrown error for inaccessible no-args constructors on modules, remove a redundant test, and rename a provides method.
Merge pull request #166 from cgruber/fixjunit4

Add `@RunWith(Junit4.class)` annotations
add failing tests for validating that SingletonBinding delegates to
the wrapped binding for getting/setting state.
Signed-off-by: Andy Dennie <github@adennie.e4ward.com>
in linkRequested, call scope() to wrap singleton bindings
(when appropriate) and then put the scoped binding onto both the
toLink and bindings lists.

in putBinding, removed the call to scope, since it is now
handled by the caller.
Renamed BindingTest to SingletonBindingTest and...
-changed copyright year to 2013
-fixed ordering of imports to comply with Square style guide
-added @RunWith
-fixed isSingleton assertion
Capitalize comment and end with period.
Switch to .dagger groupId.
Merge pull request #170 from adennie/delegating-singletonbinding

Change SingletonBinding to delegate to wrapped binding for getting/setting state
Merge pull request #171 from square/jw/group-id

Switch to .dagger groupId.
Revert from throwing a friendlier error in a case that should never occur outside of an applet.
Merge pull request #168 from cgruber/supportstatefulrootmodules

Generate ModuleAdapters even when no Provides methods are present.
add RunWith annotation.
Merge pull request #172 from cgruber/supportstatefulrootmodules

add RunWith annotation.
Make ObjectGraph itself an abstract type with five abstract contract methods (plus the static create()), moving the implementation into a static inner class.
Merge pull request #173 from cgruber/abstractgraph

Make ObjectGraph itself an abstract type
Use SourceVersion.latestSupported() to avoid warning with JDK 7.

When using dagger-compiler in a Java 7 project, the compiler used to issue
a "Supported source version 'RELEASE_6' from annotation processor
'dagger.internal.codegen.InjectProcessor' less than -source '1.7'" warning.