use Floyd's sampling algorithm to return random peers
updated package.json, bumped version, added bencoding dependency
implement non-compact announce mode, use bencoding to bencode response data, add peer_id to Peer