Fix no cursor showing when hovering a clickable element
Refactoring of mouse cursor handling/handling clickable elements

* also added the hidden? accessor which is more idiomatic for
  queries than hidden (e.g. for getting booleans)
* and the accompanying visible?