Added facility to dump multicolvars and the corresponding atom position to an xyz file
Removed calculation of derivatives when not required

This functionality is not complete.  In multicolvar this is
done correctly.  However, for normal colvars and the like
derivatives are still calculated even when they are not required
Changed this test so that it tests the new vessel LABEL keyword
Made single class that allows you to pass vessels

There are now a number of places where data in vessels is passed
between actions.  For instance this is done in multicolvar functions
such as local_q4 and when calculating the average value of the CV in
a particular volume.  I had done this in an ad-hoc way so there were
duplicated bits of code in different places.  I have now changed the
code so that there is less duplication of code.  There is now a single
base class which (most) of these vessel using actions inherit from.
MultiColvar functions still copy data across manually
Changed the way that many restraints works

Manyrestraints now allows you to add a bias on all the collective variables
calculated by a multicolvar.  You can thus use it to force the system have all
the atoms have a coordination number higher than a certain value and so on.
Using link cells in multicolvars that work like COORDINATIONNUMBERS

I have made a small change to SwitchingFunction so that you can get
the value of the cutoff from the tolerance.  Have also added a regtest
to check if link cells work correctly
Added small tool to calculate value of kT in any units
Added reference module so as to allow more flexibility.

The reference module means that you can use different types of metric when
calculating the separation between the instantaneous position and a reference
configuration.
Using new RMSD for secondarystructure variables
Using new RMSD architecture for DRMSD, RMSD and Target
Removed old DRMSD calculator
Added multidomain rmsd measure
Changed manual to include descriptions of distances
Added mapping module for paths
Using reference arguments inside analysis objects.

The eventual plan here is to use analysis to do things like classical MDS
Removed passing of log to reference objects.
Created a class to hold the vector of ReferenceConfigurations

A class is used to hold the vector of ReferenceConfiguration and the
points where each point is mapped and the weight.  This means that we
can reuse this functionality in analysis for creating MDS and these sort
of things.  In addition, you can do dimensionality reduction with analysis
and then use the result in mapping.
Added beginings of MDS algorithm to analysis module
Implemented classical multidimensional scaling

Also fixed how weights are dealt with in analysis and mapping
weights were stored in different places in analysis and mapping
this was confusing for developers.  The weights are now always
inside the individual ReferenceConfiguration objects