Generalized reselect_async into async_event, as per Alexandre's suggestion. By default if an async changes state to STATUS_PENDING or it is finished (ie being destroyed), we reselect. Fixes bug 9787. Mike.