This doesn't look right to me.  invoke just returns its argument?  Shouldn't it call it as a function?

eg
```clj
(invoke [this#] (this#))
```