Adds support for recursive singleton injection (Closes #12)

- Adds minject.Injector.construct, which instantiates but does not injectInto
- InjectSingletonResult calls construct, stores in result, then calls injectInto
- Added recursive injection test