Start using typed units in rust-layers

This allows conversion between unit types which are self-documenting and helps prevent the introduction of errors or confusion about unit types.
Yeah, eventually when LayerBuffer is using typed units it will make sense to use TypedPoint here. By avoiding a change to the argument now I can do this process all in one commit.