Navigator: centralize filter creation for all nodes

This commit makes it much easier to understand how the final filter is computed.
There is now one function that collects all filters from the current node until
the next break and one function that takes this list and condenses it into a
single filter object.