afterSnapshot method
Keeps the snapshot createSnapshot just took, so getLatestSnapshot can hand it back. There is nowhere else for it to go.
Implementation
@override
Future<void> afterSnapshot(String documentId, Snapshot snapshot) async {
_snapshots[documentId] = snapshot;
}