working version. need to clean it up a bit and decide which bits we’ll code together in class