Advanced Configuration start

Plugin now understands advanced configuration in the form of quality
requirements and qualities to assume if the entry matches them. These
rules are not yet used for assuming, only tested and stored.

Also refactored the act of assuming an entry's quality into a separate
method.
Advanced rules now used for default case

No other rule matching yet
Case insensitivity on 'everything'

Not sure why I wrote the if that way round.
Rule matching now performed
Store rules in sorted list

Rules are now stored as namedtuples in a sorted list (sorted by
precision of the rule, see precision()). This allows rules to have
priorities, currently more specific rule = higher priority.
Refactor 'everything' test
All rules now tested and applied
Added advanced usage example
Improve precision calculation
Documentation updated

Applies quality components to entries that match specified quality
requirements.
When a quality is applied, any components which are unknown in the
entry are filled from the applied quality. Quality requirements are
tested in order of increasing precision (ie "720p h264" is more
precise than "1080p" so gets tested first), and applied as matches are
found. A pseudo-requirement "everything" is also supported, which will
match all qualities. Using the simple configuration is the same as
specifying an "everything" rule.