package in Rust

Rust has a number of features that allow you to manage your code’s organisation, including which details are exposed, which details are private, and what names are in each scope in your programs. These features, sometimes collectively referred to as the module system, include:
* Packages: A Cargo feature that lets you build, test, and share crates
* Crates: A tree of modules that produces a library or executable
* Modules and use: Let you control the organisation, scope, and privacy of paths
* Paths: A way of naming an item, such as a struct, function, or module