Describe why .size and .count might be different
Add `subscribers` to Account
Add `subscribed_channels` to Channel
Add `subscription` to Channel

`channel.subscriptions` returns the list of "Subscription objects"
of the authorized account to the channel. However, there can be at
most one (the account is or is not subscribed to the channel).

For clarity, `has_many :subscriptions` has therefore been replaced
with `has_one :subscription`. The old `subscriptions` method is
still accessible, since that's included in the behavior of `has_one`.
Merge branch 'better-subscription-taxonomy'
Revert "Add `subscription` to Channel"

This reverts commit 80407f9335e959e84d5d5a3f3cb08a67cf89ccdf.
Revert "Add `subscribed_channels` to Channel"

This reverts commit bdc09f916ba2da4a3cd7cb8b89f9a2956dcce6e9.
Revert "Add `subscribers` to Account"

This reverts commit 2b3576ed91af1164219b53b7384c6ecff52cccd6.
Merge branch 'revert-better-subscription-taxonomy'
Better code coverage
Add `subscribers` to Account
Add `subscribed_channels` to Channel
Add `subscription` to Channel

`channel.subscriptions` returns the list of "Subscription objects"
of the authorized account to the channel. However, there can be at
most one (the account is or is not subscribed to the channel).

For clarity, `has_many :subscriptions` has therefore been replaced
with `has_one :subscription`. The old `subscriptions` method is
still accessible, since that's included in the behavior of `has_one`.
Merge branch 'subscriptions'
Allow to change the position of a PlaylistItem
Merge branch 'add-update-to-playlist-item'
Allow to set the position of a new playlist item

`add_video` and the related methods now accept `position` as an option.
Merge branch 'add-position-to-add-videos'
Remove duplication with new `has_attribute`

Instead of repeating the pattern

```ruby
def type
  @type ||= @data.fetch 'type', ''
end
```

the code is now more compact and readable:

```ruby
has_attribute :type, default: ''
```
Merge branch 'has-attribute'