a rigid body simulator written in Haskell