Added support for waiting for finished controller states

You can now wait for the controller to finish it's actions using
```lisp
(wait-for-controller)
```
If you give the optional timeout parameter, i.e..
```lisp
(wait-for-controller 5.0)
```
it will return after the number of seconds you provided. When returning normally, e.g. when the reference state was reached, the call will return `T` and `nil` otherwise.