Following the interactive rustbook at https://rust-book.cs.brown.edu/