[FIX] Dead links for disabled plugins

 * Jump over components whose plugin is absent (probably disabled for missing dependencies)
 * Check if link can be built before trying to show it
[MIN] Handle BadRequestKeyError nicely
[FIX] Bug added in b8c73e6e0e (menuStatus)

getActionsHTML was supposed to return something if the menu was *not*
open. so it never returned anything but we changed it to always return
something...
[DOC] Add docstrings to flask util functions
[FIX] Error handling outside request context
[DEL] legacy reservation export