Make parse methods not mutate inputs
Make Matcher take any kind of iterable as param and convert to set
Make Matcher constructor more terse
Make cli.py more pythonic.

Convert tabs to spaces, line break like in a more pythonic way.