Before #62 is done, we should consider what the `unsafe` blocks that we currently have are doing and what should be contained in them.