* Prevent Taiko difficulty crash if a map only contains 0-strains
* Add second check for safety
This is accessing a different array of strains. I'd rather be safe than sorry.
* Add guard in PP too
* Make `MarginOfError` a const
I read through this thinking "why doesn't Previous get assigned to
currentEncoding here? But it's because the initializer runs right after
the ctor and before the "method" returns. So really there's 3 operations
running on one line here - ctor, init, and assignment.