added validation for number of contract years and special cases for rookie contracts