Allow multiple submenus (Issue #13 & Issue #26)

Moved the submenu creation into separate methods which allows for a
recursive menu generation and therefore multiple submenus