Add an until() function to the condition object

I added an `until` function to the `condition` object. It works exactly like it's expected to:

```js
condition.until(function () {
    return true;
}, function () {
    // Called every time the condition returns false
});
```

I added some tests and documentation too.

(I ventured adding some more **verbose** docs for asynchronous conditions, providing a small example. I really liked this project!)