added a class method for touch that creates a copy of a new touch object with the same attributes as the original and increments the due_date based on the repeat cycle