Added the ability to destroy the GuiceContainer

Problems occur in tests when you have to initialise Guice for multiple tests in
the same file. This causes dependancies that were initialised in the first test
to be available in the other tests further down the test chain.

To fix this I have added the ability to destroy the GuiceContainer. Calling this
after each test or including it in your Play Globals onStop method will ensure
dependancies from earlier tests are not interfering with your tests.

I've also added a very handy initialise function that is a little more scala-y.