Log each use of AutoBindSingleton

Additional features in this pull request
1.  Get rid of module replacement, after some discussion this feature was deemed to complex and error prone.
2.  Add OverrideAllDuplicateBindings feature (enables via withModuleTransformer) that makes it so any module in the list of modules can override bindings in the previous module.  This feature is optional and does not provide any error/warning about overridden bindings.  That will be supported in a future version.