Generalizing over Generics in Rust (Part 1) - AKA Higher Kinded Types in Rust

This was requested over on reddit by /u/CalligrapherMinute77