Refactoring to use the type system to keep position and momentum
separated in the repa implementation.