Put most of Group.hpp into a .cpp file, because apparently you can do that with
template specializations
Made `conjugacies` in groups.py more efficiently return its results "in order"
and in the process discovered I'd implemented the function wrong in both Python
and Haskell
C++: Constructors now throw exceptions when passed invalid arguments