Remove scope from wrap; add wrapFor function.

Scope can't be optional in wrap, since there's no way to tell whether it
was passed in or not (who knows what the "real" args to the wrapped
function are?). Since often you won't need a scope, make wrap take no
scope but add a wrapFor function that takes a scope.