Now offsets and it's metadata are stored in array of offset_t. First several bytes are used to store lengths of allocated data, length of `rec_t`, a couple of flags and such things.
The goal of this task is to replace it with a bitfield class with span which will point to either static of dynamic buffer. This will bring more type safety. Ideally we should try to pack this class in 2 bytes, if possible.