created Viewer
created MenuViewer
created Viewer Interface, should implement a StatePattern
renamed method