_isEmpty should give a warning when used with ExactlyOne

(User Story, Investigate , Priority: Medium, Test Status: No automated tests yet , Reported By Justin du Coeur, )
Summary: That is, _isEmpty can never be true with ExactlyOne, by definition, so using it there indicates an error.
Obviously, this also applies to _isNonEmpty, and so on. There should be a concept that a function only applies to potentially-empty collections.
I suspect that the only place this can be dealt with is the not-yet-started IDE: there's no good way for this to produce an error in ordinary QL processing. But the implication is that we want to carry semantics of "could be empty" through the IDE's code flow.