Best way to achieve setting an origin with Group2D

What is the best way to do this? Anybody written a plugin or method for this?

My idea is to use a Group2D that contains the Group2D I want to rotate. I could possibly position the Group2D that contains the Group2D where I want and then I could position the contained Group2D to the point I want to rotate around.

I feel like somebody may have already written code that could help me achieve this.

Thanks