The positions() method is only used inside the PhraseAndIterator and
requires either a VectorPositionInfoIterator or a DBPositionIterator,
as these are the only ones reimplementing the positions() method.
Actually, VectorPositionInfoIterator and DBPositionIterator have
identical implementations, save the constructor argument. The conversion
of the constructor argument can be trivially inlined and DBPositionIterator
can be removed completely.
This indirectly improves the test coverage (VectorPositionInfoIterator is
used in the PhraseAndIteratorTest) and removes duplicate code.