added some todos re: peer connection states
refactor of fetcher