Back dirty and deleted SObject collections by a Map<Id, SObject> instead of a List<SObject> to prevent duplicate registration.
Modifies existing unit test to exercise the Map-backed collections of dirty and deleted objects. This tests that registering the same object as dirty or deleted doesn't result in a "duplicate Id" exception during the commit. It asserts that two field updates can be performed on the same object, with a registerDirty call after each.
Merge pull request #32 from patronmanager/master

Back dirty and deleted SObject collections by a Map<Id, SObject>