Mimics MediaStreamTrack.
@type id() :: integer()
@type kind() :: :audio | :video
@type rid() :: String.t()
@type stream_id() :: String.t()
@type t() :: %ExWebRTC.MediaStreamTrack{ id: id(), kind: kind(), rids: [rid()] | nil, streams: [stream_id()] }
@spec generate_stream_id() :: stream_id()
@spec new(kind(), [stream_id()]) :: t()