Allow actions to use return, try!, and ? operator.
Wraps action code in a closure, then immediately calls it. Uses a workaround (all variables the action might need "let" themselves inside the closure), to ensure the compiler doesn't complain about moving from external captures. Compiler bug, maybe?
Showing with 24 additions and 2 deletions