def addTrackerClient(infoHash, info, trackerclient)
      raise "There is already a tracker registered for torrent #{QuartzTorrent.bytesToHex(infoHash)}" if @torrentData.has_key? infoHash
      torrentData = TorrentData.new(infoHash, info, trackerclient)
      trackerclient.alarms = torrentData.alarms
      @torrentData[infoHash] = torrentData
      torrentData.info = info
      torrentData.state = :initializing

      queue(torrentData)
      dequeue      

      torrentData
    end
def addTrackerClient(infoHash, info, trackerclient)
      raise "There is already a tracker registered for torrent #{QuartzTorrent.bytesToHex(infoHash)}" if @torrentData.has_key? infoHash
      torrentData = TorrentData.new(infoHash, info, trackerclient)
      trackerclient.alarms = torrentData.alarms
      @torrentData[infoHash] = torrentData
      torrentData.info = info
      torrentData.state = :initializing

      queue(torrentData)
      dequeue      

      torrentData
    end
Add a new tracker client. This effectively adds a new torrent to download. Returns the TorrentData object for the
 new torrent.