gui microscope: simplify selection of chamber button faces

Don't rely on the role, but just on the properties of the microscope
to select the button faces of the chamber button.

So far it works better, as it detects the Phenom now the same way as
the Delphi. Once we support another douzain of SEM, we might need to
review this again ;-)
Update hole detection to search for hough circles
Merge branch 'kimon-MiniCalibration' of vpn.delmic.com:odemis into kimon-MiniCalibration
util stage: improve ConvertStage to make support all usages of InclinedStage

Support moveRel
Default value for rotation, scale and translation so that conversion from
InclinedStage to ConvertStage is straightforward.

Also introduce test cases (which all pass), so that we can be pretty sure not
to break anything once we drop InclinedStage.
util stage: replace InclinedStage by ConvertStage

ConvertStage can now do everything InclinedStage could, so remove InclinedStage, and
only use ConvertStage.

The change look like this:
-            stage_ab = InclinedStage("converter-ab", "stage",
-                                children={"aligner": stage},
-                                axes=["b", "a"],
-                                angle=135)
+            stage_ab = ConvertStage("converter-ab", "stage",
+                                    children={"orig": stage},
+                                    axes=["b", "a"],
+                                    rotation=math.radians(-135))
util stage: test cases for AntiBacklashStage
driver combined stage: fix creation of ConvertStage

We've just changed ConvertStage's arguments, so we need to update the instantion too.
util stage: Generalise and simplify Antibacklash stage

Support any number of axes, and don't ask for their names, as they
are the same as the axes of the child.

Don't move axes which are not involved in the original call.

Don't create our own position VA, but use directly the one of the child.

Introduce test cases.