fix #423: pool: LoopExit in imap/imap_unordered

It was possible for IMap/IMapUnordered greenlets to exit without putting the final StopIteration. So, whoever was waiting on the results would have to wait forever (or until LoopExit if there's nothing else running in the program).

Original patch and test by @thinxer (close #424).

Fix #311: same issue.