adds TopMenuItem model which encapsulates top_menu parsing logic
Merge pull request #1070 from house9/top-menu

adds TopMenuItem model which encapsulates top_menu parsing logic