Re: Odd definition of 100% Rust...
There will inevitably be cases where "unsafe" code is unavoidable (or desirable) - especially if you're writing an OS. The thing about Rust is that it obliges you to explicitly declare sections of code as unsafe, making for better transparency.
Rust also has several features which make it easier and more natural to code safely without incurring performance penalties, where the corresponding C paradigms are inherently unsafe (e.g., on gounds of NULL pointer dereferencing, array bounds overuns, data races, non-portability, etc.) The compiler does a lot more of the heavy lifting in Rust, and performance may sometimes by improved over C, as the language gives the compiler more guarantees than C does, which it may exploit for aggressive optimisation.
There's an excellent article about this here.
(Disclaimer: I code a lot in C and not at all in Rust.)