Store and print pre-batched function

This makes `print(batched_fn)` print the function as it was before it was batched, which is widely regarded as more useful.

...Though the user might be in for a bit of a surprise when they actually dig in, so maybe it would be better to just let it print as is, but with the `batch_fn` `attr`?

...Also, this doesn't work when you just type `batched_fn`.