add postfix functions, rework pre- and postfixes as switch statements