Fix bug for mid-expression "-x" normalisation.
Rename the normalise_coefficients function.
Add function to convert inequality to less-than.

This is not strictly correctly implemented. Currently, it takes an
expression of the form:

  left terms > right terms

and returns an expression:

  right terms < left terms

when it should more accurately be:

  right terms <= left terms

However, it is close enough for now. More accurate would be to invert
the coefficients, rather than the ordering.
More correctly replace greater-than inequality.

This now inverts the terms' coefficients instead of swapping left and
right.
Move all terms to the left of the inequality.

Doing this in the same function which normalises the inequality to
less-than in order to reduce duplication.
Normalise inequation by combining terms. Finished!

I think this method might be clearer if implemented using reduce instead
of recursion. Might try that once unit tests are in place.