fixing bug in action::execute - it wouldn't work when executed outside an HTTP request (from the timeout sweeper). Now timeout tasks will have a null user_id which is not ideal. We might want to pass on the trigger type (time) to the case log entry to more clearly indicate when an action timed out.