catch error when passing normal functions into co

If a normal function got passed into co by mistake, and if the function is buggy and throws an error, it'd manage to crash the process. 
I think putty try/catch around the invocation of the function is a necessary safeguard.