Implemented work and work types, and passed tests