pub fn decode_from_cursor(cursor: &mut &[u8]) -> Result<Value>
Decodes from a cursor, returning the value and advancing the cursor. Also used by Document::decode which needs to track position.