Add partial decoding and fatal handling of errors
Seek to first key when first key is nil
Improve documentation for key