Setting up the menu

Lots and lots of code here. No menu yet, but getting there.