Change lazy selector API so that select() cannot be used

select() actually does select with replacement, while the operator()
does the select without replacement. This was just to unclear and so
it's been used instead of operator(), now corrected.
Massively optimize lazy_selector (probably ~1000x faster)
Minor comment format improvement