Use chained API for initialising perlin source

Also updates to the latest Rust.