Adds support for normals

The build currently fails on rust-nightly pending on https://github.com/rust-lang/rust/issues/18659.