Added abstract base class for menu items, etc

* Added abstract base class for menu items
* Added text box class