Subcut code review

Hi Chris

Feel free to take a look and use these changes or not. What you had would work, but probably used inject[] more than it needed to (it's usual to separate the binding module from the injectable, i.e. not to have inject inside the binding module or the place where the binding module is defined - think of one as the producer and one as the consumer - things are clearer (I think) when they are kept separate.

I created a StandardConfiguration module since that is what people generally use this for, and then simplified the test by just modifying those bindings inline - it's much quicker than creating a new binding module for testing, although if you use the same alterations in a bunch of tests you still might want to create a TestModule that can be reused.