Changed borrow to use closures rather than procs

This gets around a problem I faced with the Send semantics of procs
and trying to nest them.