Refactor DynamicPathVisualizer.

1. Add the beginning of arbitrary reference frame support.
2. When in 3D mode, paths are now drawn in the reference frame they are defined in.
3. In other modes, paths are drawn in the fixed frame.

Still need to fix tests and clean up code.