change maxInterval to length
adds timeout object
adds a time limit parameter to interval options