Finish the Cartesian/Cocartesian story. Associate all the type families to their respective type classes. Rename some operators. Cleanups.