removing timeout code not implemented yet and opts.client assignment
opts should be unaltered
renaming options to child options