Rewrite show/hide functionality as a reusable function

Introducing serendipity.toggle_collapsible, which

– is a reusable function available via the serendipity namespace
– has arguments to customize the show/hide icon, but also has
  sensible default fallbacks for those arguments
– creates an individual key in localStorage to store the open/
  close state in

The latter also fixes a bug(?) which made show/hide in the entry
editor save the state for entry metadata and advanced options in
the same localStorage key. This could be improved with a fallback
for toggling elements which don't have an id.

References #144