fix: misc issues with filter + app-sidebar
we moved filter state into it's own context so it can be changed and
accessed anywhere.
filter-context now handles it's own parsing, and changes are always
propagated through filter-text as the state. newText gets updated to be
filter text when in filter mode, and the side bar reacts to and changes
the filter text as well.