Fix infinite loop

Previously, you couldn't assign a batched function to itself (e.g., `fn <- batch(fn)`) or it would spiral out of control into an infinite loop.

...Now, you can.