correctly invalidate timer when starting to receive data
set the timeout to set isloaded to YES and only create timeout if we haven't started loading. this makes sure that timeouts don't have twice