I'm sorry for this incredibly late response to your question.
It appears as though you were likely not calling Taxi's set-driver! function before calling `windows`. The new-remote-session function returns a server and a driver instance; you would need to take the driver instance that it returned and pass that to set-driver! in order to have its underlying *driver* var bound to that value.
The Var$Unbound indicates that your code is trying to use an unbound var, and the only unbound var in clj-webdriver's code is the clj-webdriver.taxi/*driver* var.
-Daniel