Visibility matching on SLElement

Added functionality to SLElement which further filters the matching routine based on the visibility of a view.
You'd want to use [`-slAccessibilityIsVisible`](https://github.com/inkling/Subliminal/blob/master/Sources/Classes/Internal/NSObject+SLVisibility.h#L40), and check all objects, here--there are a bunch of reasons why objects, including non-views, might not be visible from both the user's and UIAutomation's perspective.

(Making this change would cause `matchOnlyIfVisible` to fail in non-portrait orientations (https://github.com/inkling/Subliminal/issues/135), but would be generally more robust. It would be nice if you could fall back to `UIAElement.isVisible` as does [`-[SLElement isVisible]`](https://github.com/inkling/Subliminal/blob/master/Sources/Classes/UIAutomation/User%20Interface%20Elements/SLElement.m#L346) but I'm not sure how you'd do that given that matching takes place on the main thread.)