Reworked the SystemSnapshotRecorder (more control of starting, recording, and finishing from the caller's perspective).
Reworked the SystemSnapshotHandler using the updated ISnapshotRecorder interface.
The ISnapshotRecorder interface is not more conducive to System and Public snapshots.
Further checks before recording public snapshots.
Created hashing function for byte[] -> int32.
Included naive implementation for PublicSnapshotRecorder.