This is fix for the changes made at r2591 which were an attempt to fix the bug. Those changes did
not work though as the Scientific PDB data structure always contains the objects 'peptide_chains'
and 'nucleotide_chains'. Therefore these are now tested to see if they are empty rather than if
they exist.
The algorithm remains the same as in r2591, peptide chains are searched for and used first, then
nucleotide chains are searched for, and if neither are present RelaxNoPdbChainError is raised.