Revamp `Cursor::get_{text,blob}` functions

Along with usual lint suppressions, these commits change `Cursor::get_{text,blob}` to return an `Option<&str>` or `Option<&[u8]>`. This correctly handles `NULL` (hence fixes #92), and moreover, reduces the redundant allocations when the buffer doesn't need to be kept. This also makes `Cursor::get_bytes` fully redundant, so it has been removed.