Ok every package has a track id
You can get checkpoints of a package, which are lazily fetched
There must be some client, which fetches data for the package
And we will somehow point to this client
Since the client can be something complex, it's better to make an attr_reader for it
Merge branch 'package'