1. Not currently (at least it's not simple... technically it is possible though). This has already been added to the next release, which will be available soon.
2. No, you should avoid writing code that doesn't return. You can do long-running tasks in a background thread and update a cell later as shown in the example.