Utils.ExtraMath cleaned up

Many small changes made to ExtraMath, the most notable being:
- the use of Double instead of double, Integer instead of int, etc.
- splitting deviateFrom() into deviateFromCV() and deviateFromSD() to
cater for the alternate methods of deviation from a value.
- more robust determination of the sign of a value.

Changes to other files are those required to deal with changes to
ExtraMath: further work on these will be commited soon.