Add a show method to the potmatrix class.

* timestream/manipulate/plantSegmenter.py (show): New method in the
ImagePotMatrix class. Will draw all pot squares (not centers) on the image.
* timestream/manipulate/pipecomponents.py (show): Uset the new show method
to show a plant extractor update.
Use CIEL*a*b. Run k-means once.

CIEL*a*b is a bit better than RGB at noticing the differences in the green
spectrum. We have a pretty good idea of where the pot is, so we don't need to
grow it. And we add a texture feature explained in Massimo et. al.
(Image-based plant phenotyping with incremental learning and active contours).
* timestream/manipulate/plantSegmenter.py (PotSegmenter_KmeansSquare.segment):
Remove the logic that grows the pot in search of a better segmentation.
(PotSegmenter_KmeansSquare.getFeatures): New method that returns color and
texture features.
Add complexity calculation

We use complexity to decide if a mask is appropriate or not. If there is too
much complexity, it usually means that the segmentation when wrong.
* timestream/manipulate/plantSegmenter.py (calcComplexity): New method in
PotSegmenter_KmeansSquare that calculates complexity. We use Parrott et. al.
2008.
(segment): We check the relation of background -vs- foreground. If there is
more FG than BG we invert the mask.
Show segmentation only when visualise is active.

* timestream/manipulate/pipecomponents.py (__call__): Remove the show call
from __call__
Add arguments to control the k-means calculation.

* timestream/manipulate/plantSegmenter.py (segment): Try calcKmeans with 20
attempts instead of 10.
(calcKmeans): We add iterations, epsilon and attempts as new arguments to our
method.
Show segmentation when segmenting

We were not actually showing the segmentation before.
* timestream/manipulate/plantSegmenter.py (ImagePotHandler): We now always
return a mask. Its completely black if we have none available.
(ps): New property. This fixes a previously hidden bug.
(mask): When the mask contains negative 1 it has not been calcuated. Mask will
only be calculated if self._ps is not none and contains -1. If self._mask does
not contain -1, we return it
(rect): Reset self._mask to all -1 when changing self._rect.
(maskedImage): This property now returns the segmentated pot within the original
image. It's like a window into the segmentation.
(show): use the new maskedImage property to build a proper segmented image to
show.
Show all plots in the same figure.

* timestream/manipulate/pipecomponents.py (show): Use plt.subplot to show
multiple plots in the same figure.
Print the current segmented pots in the same line.

* timestream/manipulate/pipecomponents.py (__call__): use \r to print the
message of the pot being segmented.