Quite huge changes

- version bump

- macros-based state error handling

- cursors allowed to move out of iterators

- database handles are cached and do not need allocation/deallocation

- other minor cleanups
Removed mut flag for DB queries
mod base -> mod core
Convenient try_mdb and lift_mdb

To wrap returned value into result is actually lift_mdb responsability
Limiting CursorValue lifetime to Cursor lifetime
Moving out transaction after commit/abort

Allows to fix issues in compile time
Txn -> Db

Most of data processing moved from Txn to Db responsibility. It should allow much more fine grained and localised data extraction and potentially encoding/decoding