*  Removed the Numeric module from the --info print out as it is completely unused now.
*  Added the Bruker PDC software info to the exp_info module.
*  The [http://www.nmr-relax.com/manual/pdc_read.html pdc.read user function ] back end is now reading the PDC version information.
*  Added a catch for the "worst case per peak scenario" option in the PDC.  This will now throw a RelaxError, telling the user to go back to the PDC and use the other option.
*  Converted the [http://www.nmr-relax.com/manual/pdc_read.html pdc.read user function ] back-end to use the \t delimitation of the PDC file for parsing.
*  The R1 value and error are now being read directly from the PDC file.
*  Added wrapper methods to the relaxation curve-fitting specific code for the new C modules.  These allow the parameter numpy array from minfx to be converted into a Python list prior to sending it into the C module.
*  Scripts can now be run again under Python versions 2.4 or lower (by avoiding the runpy module).
*  The auto_analyses package modules are now imported by __init__ to force their existence.
*  The [http://www.nmr-relax.com/manual/relax_data_back_calc.html relax_data.back_calc user function ] arguments no longer need to be supplied.
*  Shifted all of the model-free sample scripts into the new subdirectory sample_scripts/model_free.
*  Added copyright headers to all of the sample scripts, and updated the introduction text.  This allows users to determine the age of the scripts.
*  Removed 'relax_disp' from the VALID_TYPES data pipe type array.  This is supported in the relaxation dispersion 'relax_disp' branch and not in the main line.
*  The RDC and PCS Q factor user functions now do nothing when data is missing rather than failing.  A warning is given and the function now simply returns rather than raising an error.
*  The grace file created by the [http://www.nmr-relax.com/manual/pcs_corr_plot.html pcs.corr_plot user function ] now separates each element into its own graph.
*  Converted the summary from the final_data_extraction.py sample script into comma separated file (.csv).
*  Added the PDB reading parts of Scientific python to relax so that Scientific python is no longer a relax dependency.
*  The create_molecule, create_residue, and create_spin functions now return the created container.
*  Modified the create_spin() function to overwrite the first spin if empty.
*  Redesign of the [http://www.nmr-relax.com/manual/structure_load_spins.html structure.load_spins user function ] back end for XYZ file reading support.
*  Redesign of the main relax module.  The module has been renamed to 'relax.py', and the original file 'relax' is now a very basic python script which simply loads the module and runs the new start() function for launching relax.
*  The relax mode normally specified by the command line can now be overridden.
*  The relax_io.read_spin_data() function no longer skips short lines so that a warning is given for it.
*  generic_fns.sequence.validate_sequence() now also checks for the spin ID, data and error columns.  This is now used by relax_io.read_spin_data().
*  Files created by the [http://www.nmr-relax.com/manual/grace_write.html grace.write user function ] are now put into a new list cdp.results_files.*  The [http://www.nmr-relax.com/manual/value_write.html value.write user function ] now also adds to the cdp.result_files structure.
*  Modified the execution lock to have a mode.  This allows for greater control and avoid string comparison of names to determine if a script or auto-analysis acquired the lock.
*  The dauvergne_protocol is now more robust if the program is interrupted and restarted later[d'Auvergne and Gooley, 2007][d'Auvergne and Gooley, 2008b].  The opt/results.bz2 file is now searched for, and if not the round is assumed incomplete.
*  The [http://www.nmr-relax.com/manual/pymol_tensor_pdb.html pymol.tensor_pdb() user function ] now shows the diffusion tensor using PyMOL sticks.*  Creation of the new [http://www.nmr-relax.com/manual/structure_read_xyz.html structure.read_xyz user function].
*  Addition of two new system tests Structure.test_read_xyz_internal() and Structure.test_read_xyz_internal2().
*  Changing the description in the user functions [http://www.nmr-relax.com/manual/structure_load_spins.html structure.load_spins ] and [http://www.nmr-relax.com/manual/structure_read_xyz.html structure.read_xyz].
*  Code for extracting a vector between specified spins in a XYZ file has been included in the generic_fns.structure.internal.
*  Debugging in the function generic_fns.structure.main.load_spin() in order to load a spin for XYZ file properly.
<section begin=bugfixes/>
*  The setting of the integration method in the [http://www.nmr-relax.com/manual/pdc_read.html pdc.read user function ] now works.*  Fixes for the [http://www.nmr-relax.com/manual/pdc_read.html pdc.read user function ] back-end for the NOE PDC file.*  Fix for the [http://www.nmr-relax.com/manual/pdc_read.html pdc.read user function ] back-end for reading NOE data out of the new PDC files.
*  Fix for the relaxation curve-fitting back_calc_I C function so that it works under Python 2.5.
*  Fix for the initialisation of the Bruker_import class.  This allows this module to be loaded in Python 2.4.
*  Some fixes for the subprocess.Popen() calls on MS Windows.
*  Removed event.skip due to conflict with Windows (auto-analysis Rx fix in the GUI).
*  Fixes for the [http://www.nmr-relax.com/manual/spin_copy.html spin.copy ] GUI user function element.  This still had remnants of the residue.copy window.
*  The relax icon is not shown in "Global relax settings" window if running on a Mac.  This fixes a bug whereby closing the window causes the GUI to crash.
*  Complete redesign of the relax global settings window to fix the Mac OS X crashing ([https://gna.org/bugs/?18197 bug #18197]).
*  Fix for the NOE auto-analysis - the column numbers for the deselected spins file are now assumed.  The residue number is assumed to be in the first column.  This is a hack until the spin selection part is better designed.
*  Fix for the bug reported as [https://gna.org/support/?2764 sr #2764].  The problem was that the sequence file is now in the variable sequence_file.
*  Fix for the [http://www.nmr-relax.com/manual/sequence_read.html sequence.read user function ] - the force flag is now being passed on.*  Fix for the [http://www.nmr-relax.com/manual/sequence_write.html sequence.write user function ] - the force flag is now passed to open_write_file().*  Fix for the [http://www.nmr-relax.com/manual/sequence_write.html sequence.write user function ] when the column separator is not whitespace.  The column widths are no longer fixed if the separator is not whitespace.
*  Many bug fixes for the functions of the generic_fns.mol_res_spin module.  These fixes are for when a data pipe other than the current data pipe is used.
*  Fix for the relax save states - the current data pipe is now saved and restored.  The info about which pipe was the current one was being blacklisted, so was not stored in the relax save file.
*  Fix for the atomic position check in the [http://www.nmr-relax.com/manual/spin_create_pseudo.html spin.create_pseudo user function].
*  Fix for pseudo-atom support when only a single structure is loaded.  Pseudo-atom support was only working correctly for when multiple models were loaded and atomic positions were not averaged.
*  Fix for the spectrum.read_intensities user function int_method argument for volumes.  Volume integration should be called 'point sum', but the back end code was checking against the string 'volume'.
*  Fix in one of the relaxation curve-fitting system tests - 'volume' should have been 'point sum'.
*  Fix for the PCS back-calculation function - divide by zero is now avoided.  The function was calculating the normalised bond vector between the lanthanide atom and itself.  The normalisation in this case is now avoided.
*  Fix for the spectrum user functions for when the ID order does not match those loaded.  If the order of IDs sent to [http://www.nmr-relax.com/manual/spectrum_replicated.html spectrum.replicated ] did not match the order they were loaded by [http://www.nmr-relax.com/manual/spectrum_read_intensities.html spectrum.read_intensities], then the [http://www.nmr-relax.com/manual/spectrum_error_analysis.html spectrum.error_analysis ] user function would fail.  The order is no longer important.
*  Fix - the pipe switching flag is now propagated all the way to the data store add() method.  The flag was previously not sent to the method so that the creation of a new data pipe always resulted in a switch to that pipe.  This bug is normally harmless.
*  Fix for the model-free _determine_model_type() method when the spin container has no 'local_tm'.  This code was failing in certain rare circumstances (when the setting up of the diffusion tensor was forgotten).
*  Fix for structure.read_pdb for when the file contains no PDB data.  This is now caught, and a warning is given and the function exists cleanly.
*  Fix for the RelaxWarning system on Mac OS X, the base class __str__ method now returns a simple string.  On a Mac, the warning message text was in unicode whereas the __str__() method must return a standard string.  So now __str__() is using the str() method to convert.
*  Fix for the [http://www.nmr-relax.com/manual/structure_vectors.html structure.vectors user function].  It no longer complains about a PDB already loaded when no PDB has been loaded.
*  Fix for the resetting of the global optimisation round in the dauvergne_protocol auto-analysis[d'Auvergne and Gooley, 2007][d'Auvergne and Gooley, 2008b].  The value was being reset to None at every round.
*  Fix for the round determination in the dauvergne_protocol auto-analysis[d'Auvergne and Gooley, 2007][d'Auvergne and Gooley, 2008b].  The 'opt' directory was missing in the path.
*  Fix for the resetting of the relax data store - the cdp structure is now set to None.  Previously the data store would be cleared, but the __builtin__.cdp structure would point to the old current data pipe, keeping it in existence and causing problems in the GUI.
*  Fix for the xydxdy type Grace graphs - the dx data was not being placed in the file.
*  Fix for the [http://www.nmr-relax.com/manual/structure_create_diff_tensor_pdb.html structure.create_diff_tensor_pdb user function ] for when no element info is available.  These atoms where the element is not in the PDB file or cannot be determined should have been skipped.
*  Fix for the molmol macro user functions - one of the args 'param' should have been 'data_type'.
*  Fix for the spin_loop() calls when generating Molmol macros.  The full_info argument should have been set to True.
*  Fix for the [http://www.nmr-relax.com/manual/molmol_write.html molmol.write macro creation user function ] - the file arg can be None!*  Fix for the [http://www.nmr-relax.com/manual/molmol_write.html molmol.write user function ] for model-free parameters.  Some of the parameters were using the ancient self.relax code path which was eliminated with the redesign of relax 1.2 to 1.3.
*  Fixes for the old scripts/optimisation_testing.py script.  This was also using the ancient self.relax code path.
*  Fix for the molmol macro of the ts parameter, the spin container variable was spelt incorrectly.