Save timeouts in ordered dict instead of dict

When more than one timeout callback is scheduled to run in SelectPoller, the order in which they will be executed is random because they're kept in a dict.

This simple change will make the callbacks be called in the same order they were scheduled.