Test suite: replace Sikuli with mix of xdotool and OpenCV.
Sikuli is broken with Java >= 9 and its Debian maintainer has given up. So we need something else. Here we implement something that is almost a drop-in-replacement for the Sikuli features we use (although the interface for keyboard interaction has changed, resulting in tons of small changes under features/step_definitions in this commit). It uses OpenCV for (fuzzy) image matching, and xdotool for keyboard/mouse interaction. We didn't bother with most of the Sikuli class hierarchy, settling with just equivalents of Screen and Match -- we drop Pattern since we don't do OCR but just image matching; we drop Region because so far we have always operated on the whole screen (if we care about a subsection we can just use findAll() and check which matches fulfills the constraints). This commit removes some functionality: both --retry-find and --fuzzy-image-matching are gone. These were mainly used for "image bumping", and I do have plans for in improved feature replacing these. Refs: #15460
Showing with 343 additions and 434 deletions