Change interface and implementation of iterators.

Move filters to a new file and create a transparent filter.
Rewrite iterators interface and set a fixed behaviour.
Adact search and navigators classes to the new changes and
refactorize some code from these classes.
Change interface and implementation of search and navigators.

A new superclass named Navigator has been created. This class is
the father of both Search and FileNavigator (previously know as
Navigator) classes. Tab and Window classes has been adapted to the
changes.