Iterators traits

IteratorQuery is split into query component trait to prepare for code enhancement