Remove mainwindow's fullscreen feature

With all the efforts I put into making it work, it breaks my heart to remove it.
However, with the planned use of client-side window decorations with HeaderBar,
it makes no sense to keep it.

First, the HeaderBar saves a ton of space, making fullscreen much less needed:
it takes 48 pixels instead of the previous 101 pixels.

Second, the way the fullscreen feature worked was by ripping out the
main toolbar, adding it on a temporary floating widget, then doing the reverse
operation when exiting fullscreen. This approach won't work with the HeaderBar,
as you cannot unset the client-side titlebar decoration, and the buttons we put
in HeaderBar are not contained in a GtkToolbar widget (themes don't like it).
Manually ripping out each and every widget from the HeaderBar isn't an option.

Removing this also reduces code complexity and problems (such as dealing with
detachable UI components or multiple monitors).
viewer: Add a button to undock the viewer directly instead of using menu actions