progressOf method
Current progress for achievementId — 0 (never throws) for an id
with no progress yet, whether or not it was ever registered. Keeps
reflecting the true accumulated value even past the threshold (an
already-completed achievement isn't "capped" at its threshold here).
Implementation
int progressOf(String achievementId) {
_validateId(achievementId);
return _progressMap[achievementId] ?? 0;
}