Make plugin injection more sensible.

Have Dagger provide most of the classes which we give to SimpleInjector
for plugins, instead of doing a weird dance involving lots of global
state and horribleness.

Change-Id: I1d15796c85f90ac22b65a952ab1a5fca0fe0b337
Reviewed-on: http://gerrit.dmdirc.com/2714
Automatic-Compile: DMDirc Build Manager
Reviewed-by: Greg Holmes <greg@dmdirc.com>
Inject a lifecycle controller.

Things need to quit! Without using global state!

Change-Id: Id6d237f386c6f35844136ceb64b7c46f0af76765
Reviewed-on: http://gerrit.dmdirc.com/2715
Reviewed-by: Greg Holmes <greg@dmdirc.com>
Automatic-Compile: DMDirc Build Manager
Update submodules: plugins (new commits)

plugins:
    e093053 Chris Smith <chris@dmdirc.com>
            Use a LifeCycleController to quit.

            Depends-On: Id6d237f386c6f35844136ceb64b7c46f0af76765
            Gerrit: http://gerrit.dmdirc.com/2716

Change-Id: Ib7868ed631fae0aa4df44648f5166b1548be1483