Add decode benchmarks, improve decode performance

Partial fix for #1, see for improvements.