Added events on trackers

The client tells the tracker when download stops or completes.

Also govet-ed tracker , bitfield and bencode