up to calculate_mac
passing mac test
empty payload test passing
more passing tests
passing up until missing impl