Function pre/post conditions do not work

```clojure
(let [my-fn (eval (wrap nop 0 '(fn [a] {:pre [(> a 0)]} a)))]
  (my-fn -1)) => -1
```

Should throw an assertion error. Seems we corrupt the map and it doesn't match whatever `fn` expects anymore.