Various refactors per PR comments: use xerrors, add context to dt calls, use cbor-gen, move files into seperate modules, etc