first iteration of functionality and design