So großartig sogar, dass ich zumindest einen Teil davon bereits ins Repository übernommen habe:
Toll gemacht!
Ich werde es funktional so belassen, wie du es vorgeschlagen hast, aber ich werde es vereinfachen und mich auf die bestehende Computed Property stützen:
Schau gerne vorbei, wenn du an der alternativen Implementierung interessiert bist.