Created a tool interface for internal tools
Includes a tool menu. Tools support keyboard shortcuts. There is
currently no support for external (contributed) tools.