Refactoring UnitOfWork - using UnitOfWorkSettings to pass storage name, ...

...getting rid of redundant methods. New method in Repository to return identity of inserted objects. New/refactored tests.