Bug: processSnapshot should use options from the scope, rather than the base scope

The base scope is passed to value functions as if it's the actual scope, but we must use the options from the parent scope as that defines the naming for value handler functions etc.
Test: bug test based on bug report from Mal, tests fix for snapshot in previous commit