Reimplement GeditPanel in terms of GtkStack instead of GtkNotebook

The Stack API matches the Panel API better, so basically GeditPanel is
now nothing more than a very thin wrapper around a GtkStack object.

The only drawback is that the bottom panel switcher buttons are ugly,
but it can probably be resolved using some styling.
Implement a new GeditMenuStackSwitcher widget.

This widget is similar to GtkStackSwitcher but uses a dropdown menu.
MenuStackSwitcher: do not drop the menu, empty it instead.

This makes it unnecessary to override default behaviour from
GtkMenuButton, so it makes the overal code easier.
MenuStackSwitcher: handle stack child property changes.
Replace GeditPanel with GtkStacks.

This reduces the amount of gedit-specific code and lets us manage the
panel layout from the gedit-window.ui file.
MenuStackSwitcher: do not show hidden children in the menu.
Remove icons from side panels.
Make the side pane's header flat.
Remove the warning when switching to non-existing stack items.
Add a custom style to the bottom panel's stack switcher.