responsive search

*implements part of #480*

This changes the search forms in some ways:

-  All search forms are generated from one definition in `forms.html`
-  The button text is replaced by an icon. This is because we need to know its width for responsive layout.
-  The form filter search forms have full width.

This way the search forms should be a lot cleaner, more robust and more responsive.