Check if the value is not already an instance of AbstractSnapshot
Add a CollectionSnapshot
Add PropertyAccess component in the CollectionSnapshot

[reset_minion]
Add an option to the CollectionSnapshot for snapshotting subelements
Add some tests for the CollectionSnapshot
Update the docs

[reset_minion]