removed the start/end date checks within the controller method and wrapped the AssignToVolunteer function in a try/catch block
moved all of the start/end date checks into the AssignToVolunteer function and throwing exceptions when the dates are invalid