I believe I have addressed all the review issues, including:
- Removing the default constructor for SpherePoint
- Improve the documentation and comments as requested
- Add default copy and move constructors to Endpoint
- Add default move constructors to Transform and disable copy constructors
- Remove one unused import from the Endpoint and Transform pybind11 wrappers
I addition I made the following changes:
- Improved the unit tests as requested.
- Add ostream::operator<< to the C++ classes and __str__ and __repr__ to the Python wrappers. The latter have unit tests. Also the Endpoint version of ostream::operator<< is used by Endpoint.__str__ and __repr__ so it is tested. The Transform version of ostream::operator<< is not used by the Python wrapper (since the templated class name naturally looks different than the C++ class name) and is not tested.
- Fixed a few minor pep8 errors in the new unit tests (my linter was broken when I wrote those tests)
Please have another look.