blk: finish the implementation

- Recover from failed flog map updates.
- Handle wrong block sizes during opening of pools.
- Add invariant checks inside btt where appropriate.
- Remove unnecessary callback entry point

Initial version by @mdalecki
The comment about writing the layout is leftover from a previous version and is no longer true.