Fix all function issue

Python [all](https://docs.python.org/2/library/functions.html#all) function returns True even if iterable is empty which in out case produce incorrect results.

Below is an example to explain the issue

```html
<!DOCTYPE html>
<html>
<head>
    <title>Visible</title>
</head>
<body>
    <div class="batman" style="display:none">Batman</div>
    <div class="superman">Superman</div>
</body>
</html>
``` 

```python
self.q(css="div.sandman").visible
``` 
The above query will return ```True``` which is ```incorrect``` because there is no ```sandman``` class present in above html.

This happens because bok-choy query ```visible``` property is defined like below 
```python
return all(self.map(lambda el: el.is_displayed(), 'visible').results)
```

```self.map(lambda el: el.is_displayed(), 'visible').results``` returns an empty list when there is an incorrect css selector but ```all([])``` will gives ```True``` and user will get the result that element is visible but in reality its not.