Some performance improvements for ->parse(), more tests.

 * Group together logical uses of _cklen and _cklen_d
 * Don't unpack arguments to _cklen and _cklen_d