ITP thesis: illustrating group theory in C++