Check action arity before calling; use slingshot to help with exit types