Simplify navigation drawer item creation

This pull addresses a few problems with how we previoiusly had navigation
set up:

1. There was a large block of code to add items and another one to respond
   to click events.
1. The items were referenced by String so there wasn't any type safety
   ensuring that the menu items named existed in the enum.
1. Many Objects were allocated every time the menu drawer is rebuilt.
   This happens frequently and results in garbage collection working
   overtime to clean everything up.
1. Each menu item handled the click event manually. For most menu items,
   an Activity needed to be launched. This resulted in lots of duplicated
   boilerplate code.