Tweak quality parsing and interaction between series/quality/assume_quality plugins, fix #2748

This is to address http://flexget.com/ticket/2748, where a valid quality string that was part of a series name still gets detected as a quality.

Several things have been simplified here:
- Series parsing runs before quality plugin, as it finds a more specific match
- No longer need to pass in current detected quality to series parser
- assume_quality now runs later to make sure plugins that actually parse quality run first
- metainfo quality no longer parses quality from description (I guess this bit is not strictly necessary after the way I refactored things, but I never really liked that, sometimes quality field is very long and messy with other crap)
- Add some unit tests for above functionality and interaction, and remove tests to do with quality from description