first stages of spec and lib takeaway files with all tests passing