Higher Kinded Types (WIP)

My initial attempts to figuring out how higher kinded types would work in Rust.