Add (recur) for functions and stuff.
Refactor (loop) in terms of fnr; change to use decorator.
Merge branch 'master' into pr/437