Rewrite of EtaCorrection method in Cluster.py.

In Cluster.py:
- use the possibility to call ErfInverse with a Qrel less than 0.5. The result will
be negative, which takes care of the direction of the shift.
- this results in much shorter code! And easier to follow I think.
- results in cluster centroid position are usually exactly the same. Rarely (13 times in
14k events) there is a difference in the ~15th decimal place of the computed centroid, due
to calling ErfInverse with a Qrel of eg 0.3 instead of 0.7. This makes no difference to
measured residuals.
- plots are the same as before
- time the code takes to run is the same as before

Also:
- removed duplicate code by calling existing functions
- added a check that the centroid of the cluster is always computed
Replaced EtaCorrection method for s2x2y2 clusters with maxTOT method.

In Cluster.py:
- replaced the EtaCorrection method with the maxTOT method for s2x2y2 clusters.
These are two hit clusters in which the pixels are corner to corner. I think
most of them are not caused by charge sharing, but rather noise / cross talk /
delta rays.

Taking the hottest pixel as the centre improves the fitted resolution of these
events, see plots. However, there are more outliers, so the RMS remains about
the same. Nevertheless, the overall resolution with all cluster sizes does decrease
slightly with this change.

To do in the future:
- it might be possible to improve further by considering the Qrel of the cluster,
and performing maxTOT for some range and EtaCorrection for the rest.
Merge pull request #19 from sredford/master

Rewrite of EtaCorrection method, and improved resolution for s2x2y2 clusters.