initial commit with all tests passing