Make it clearer that we are instantiating from a linter class
Added per-linter args setting
If code is bytes, don't encode
Added support for per-linter "excludes" setting

Can be a single pattern, or an array of patterns. fnmatch.fnmatch() is used for matching. Can be global or per project.
If any of the linter settings changed, relint all views
Upped the max line length to 120, don't need this
Switched back to linter names as is. Since the user prefs are generated, the user doesn't have to know the capitalization.
Use proper class names, ST maps camel case to _ and removes Command at end of class name
No need to break this line up, max line length is now 120
Fixed highlight offsets in embedded code
Changed the meaning of length in Highlight.range(). If length < 0, word matching is done.

This fixed the case where Highlight.regex() selected a single character, then called range(), which would match the nearest word.
Added per-linter word regex, so that Highlight can be smarter about selecting the word nearest an error position.