Building a Database From Scratch in Rust — Part 1