Feature #2137
Preliminary refactoring of constraints and update machinery.
Description
As per Mark Abraham, preliminary refactoring of the constraints or update machinery, with a view to evolving a more consistent C API for the various pieces that will make a more manageable transition to some kind of C++ interface e.g. IConstraintAlgorithm.
Setting up even a C-style object that has all the data that's currently passed on the command line would be a useful improvement, so that the calls to shake, settle and lincs can have the same signature.
To be updated with more details over the next bit.