updates design; adds builder unit test