Add PicklableMol for multiprocessing applications

Add a PicklableMol class similar to rdkit.Chem.PropertyMol.PropertyMol, but with optional support for preserving calculated properties. This ensures that molecular properties, such as the compound name, are preserved when pickling or being used in a parallel setting.

Builds on #12.