Add Assets and AssetMatchPolicy

- [x] Add Assets
- [x] Add AssetMatchPolicy
- [x] Allow for updates to match policy

```ruby
asset = content_owner.assets.where(id: 'A824442156859073', fetch_match_policy: 'mine').first #=> #<Yt::Models::Asset
asset.match_policy.policy_id #=> "aVzeRV6u-AM"
asset.match_policy.update(policy_id: 'ZNC0Fr9ipUI') #=> true
asset.match_policy.policy_id #=> "ZNC0Fr9ipUI"
```

The asset model is far from complete, but I would hopefully like to get this merged without completing the entire model architecture (it's big).

Could use some DRYing.

@claudiofullscreen Let's work together to prioritize some of the outstanding PRs.