Means we can correctly report post-declared types and give better output, much closer to how STD has it. A couple of regressions in spectest.
Factored in a similar way to %*MYSTERY in STD. However, it keyed just on name. This isn't quite enough, as it fails to distinguish the same names in different scopes, meaning mysteries can be resolved wrongly. To avoid this, we'll try keying on name and scope ID in Rakudo, so we collect together obvious dupes, but hopefully can get righter results. Information not used for anything just yet.
Makes worry just report the potential difficulties (so redeclaration of a variable is just a warning now, as STD has it), and sorry keeps going and just collects together the errors up to a limit, then gives them at the end or when there's a panic. Slightly different factoring to STD since we have typed exceptions, but produces the same kind of output.