The module is very involved and seems like it could better be its own crate, also to reduce the API surface area of `lox`.