Added TimeSlot class, let freetimeslot and ProductStepSchedule use this class