New menus, new file structure, optional DB rebuild

I created a much more robust menu system (which no longer stops with
ValueErrors) that is based on the routines in the database file, and
separated my bloated "classes.py" file into two. Now there are files
specifically for manipulating the database and DirObjects. I also made
the database rebuild optional at the beginning of the script.