Added support for `format` objects as quality.

This change fixes #16 by allowing the user to pass in a downloaded
format object. Currently the system will only check a predefined list
for it.

The reason I need this is to download videos with high frame rate. HFR
videos do not contain sound, so the video and audio must be downloaded
separately and then combined.

I can provide an example with more descriptive usage and add a new section in the readme for more advanced usage.
can you add a space between `if` and `(` here. trying to keep the coding style consistent across files.