private async Task <Validation <Error, CourseAssignment> > Validate(CreateCourseAssignment create) => (await CourseMustExist(create), await InstructorMustExist(create))
public Task <Validation <Error, int> > Handle(CreateCourseAssignment request, CancellationToken cancellationToken) => Validate(request) .Bind(v => v.Map(Persist).Traverse(i => i));