Use proper Cargo build support.

This gives proper Windows support.
Rust update: no more `[T, ..n]` -> `&[T]` coercion

(I had managed to miss the tests.)