some initial data structure and UI work