Generates the PyMOL session for the scaffold, model, and design structures.
            Returns this session and the script which generated it.

def generate_pymol_session(self, pymol_executable = 'pymol', settings = {}):
        ''' Generates the PyMOL session for the scaffold, model, and design structures.
            Returns this session and the script which generated it.'''

        if not self.fixed:
            self.fix()

        b = BatchBuilder(pymol_executable = pymol_executable)

        for s in self.structures:
            s.add_residues_of_interest(self.get_differing_atom_residue_ids(s.structure_name))

        PSE_files = b.run(MultiStructureBuilder, [self.structures], settings = settings)

        return PSE_files[0], b.PSE_scripts[0]