Add tests for format option
Wrap line (whitespace change only)
Update exception docstrings

`observe` is not implemented yet, the documentation for the
`KeyExistsError` was missing.
Improve `get`

Better error handling and tests for `get`.
Catch exceptions in `set` callback
Move encoding error handling into `_encode_value`
Add `key` to exception
Display error code only if it's applicable