Auth is now only exposed to storage impls that require authorization.

Also improved menu item handling.