Added Waiter.wait_for!, ElementProxy#wait_until_visible, ElementProxy#wait_until_hidden

Added:
- ```Waiter.wait_for!``` - Just like Waiter.wait_for (no bang), but raises ```WaitTimeoutError``` if the condition is not met.
- ```ElementProxy#wait_until_visible```
- ```ElementProxy#wait_until_hidden```
@also need a test for that ;)