adding redirects and timeouts. documenting. seems to work great