libev_connection: reset_io_watcher

Under heavy load with multiple event loops, libev's io_watcher.stop() can very occasionally fail to complete in time for the subsequent set(), raising an exception. This patch adds retry logic.