Use the `walkdir` crate for directory traversal
This is way more efficient than building our own tree in memory. (Some of the efficiency might come from the transition to a directory stack instead of a full tree, but I'll still take it.)
This is way more efficient than building our own tree in memory. (Some of the efficiency might come from the transition to a directory stack instead of a full tree, but I'll still take it.)