factor request out into class; restructure torrent-specific code;