[TV] Quality restructure/extending

**PR is just for review/comments, this isn't ready yet**

This as a starting point for #3741, there is still quite a lot of work to do but comments/suggestions on these changes and/or contributions (via my fork) would be great.

I've decided to split the ```quality``` plugin into media-specific plugins, this should allow us to implement the TV quality system easily without needing to touch the movie side of things too much.

I probably haven't explained things that much, so let me know if you have any questions.

-----------------

**Complete:**
 - ```quality``` plugin has been restructured into media-specific plugins
 - Type filter added to```quality.all```, ```quality.pre_releases``` events and ```quality.list``` api call
 - [TV] Decide on data format for properties (codec, container, resolution, etc..) and qualities
 - [TV] Build ```quality.guess``` method (replacing the current quality system)
 - [TV] Update provider category system, this needs to support matching properties to an identifier

**To-do:**
 - Link similar qualities between movie and tv (by identifier?)