Pythonising some function input arguments
Merge branch 'feature/fn_arguments' into develop

Dapid did a nice job fixing some of the Python interfaces.  As some
history, awhile back I had a different ordering of the arguments where
the StateManipulator came earlier in the function argument list.  The
reason for this is that it's this way in the C++ code because I
typically list my constant arguments first.  Now, for the internal code,
there's always a state manipulator, but for the user-defined code, most
of the time there's not.  That led me, and others, to always forget
where to put the StateManipulator object.  Eventually, I got tired of
that and just moved the argument to the end of the list.  That meant
that we could simplify the Python interface to functions like getMin.  I
neglected to do that and Dapid did nicely.