We should add a section to the docs that goes over some guidelines and examples for making custom classes that inherit from System Molecule and Forcefield since there are some design rules and constraints that need to be followed when doing so that might not be immediately obvious from looking at existing classes.