menu and readfile methods need implementing