Refactored design

Removed ObjectMemento
MementoFactory now creates all IMementoComponents for a given object
Refactored PropertyAnalyzer and added MementoCollection attribute
Added validation for collection attribute usage