Add more functions for the revolute-spherical joint:

- accessor methods
- implement functions for caching multipliers for warm starting
- cleanup
Add a demo to illustrate the use of a revolute-spherical joint