JSHint suggestions
Snapshot from a child scope to a parent that contains child scopes now exclude those child scopes.

This is so that a repeated block scope's snapshot doesn't contain the array from its parent that contains itself. There isn't a nice way for that to happen, and it's undesirable.
Update Consistent's internal merge() docs due to behaviour change with $
Test that when a parent snapshot includes child scopes that value functions are called with the original child scope, not a copy
Snapshots of parents containing child scopes can now include inherited properties and value function results, due to the new pruning of snapshots of child scopes from parent scopes when being snapshotted from a child