[Branch]: differential_rotation

This is the feature branch that contains some diff rot code, I think it needs some love so I am opening this so people don't forget about it!!
I think we probably need a utility function for it so that it is easier to do everywhere, the thing with Quantities is because they are so similar to floats, also very specific, and new I think it is very important to give the user informative errors.