Implement `SimpleCalculator` instead of `ComplexParser`

Fix `zeroOrMore` bug
Move `Match` and `Mismatch` to trait