NOT IN (... JOIN ... WHERE IN) fix

The InConditionReverser no checks if the inner select is a select containing just an inner join, if so, it moves everything done. This might be overly specific, but it fixes the bug, and seems to have no adverse effects.
Any reason not to check the data here?