The set_model() method has been added to allow either a model number to be set to the first
unnumbered model (in preparation for adding new models) or to allow models to be renumbered.
The logic of the add_model() has also been changed. Rather than looping over all atoms of the first
model and copying them, which does not work due to the model validity checks, the entire MolList
(molecule list) data structure is copied using copy.deepcopy() to make a perfect copy of the
structural data.
The ModelList.add_item() method has also been modified to return the newly added or numbered model.
This is used by the add_model() structural object method to obtain the model object.