Revise actions to be based on an ActionManager.

This touches everything that can invoke an action.

This is prep work for allowing Adapters to install handlers for new device
specific actions.