faster
simplifier
back to slightly less optimized but correct
break out stateful encoder/decoder
useful debugging tool
coder correctness
correct and optimized
minor edit