Pet peeve: Rust projects whose repo is organized as a bunch of directories like
crates/$projectname_foo
crates/$projectname_bar
1) This is not organization! This is ravioli code. Directories and their nesting convey relationships.
2) You don't need to repeat the project name in every crate. In other words, the crate name is not required to match the directory name. If a project has a myproject-async-interp crate, it is easy to figure out that the path named async-interp is its home.