**Changes**:
- Added a few classes that will help simplify inspectors:
- `IssueDescriptionParser` -- A parser for an issue description. It allows to parse the issue description using regex and convert the resulting groups using the converter.
- `IssueConfig` -- Custom config for a code issue. The main task of this dataclass is to change the issue description. If necessary, you can specify a parser that will parse the old description and insert the extracted data into the new description.
- `MeasurableIssueConfig` -- Custom config for a measurable issue. The main task of this dataclass is to contain a parser that will extract the measure from the description. It is also possible to specify a new issue description if necessary. Unlike `IssueConfig`, this dataclass contains an additional field `measure_position`, which indicates the index by which the measure can be found in the regular expression pattern. This field is useful if the parser parses not only the measure but other data as well.
- `IssueConfigsHandler` -- A class that handles issue configs. It accepts issue configs, turns them into dictionaries and handles requests for getting measures and descriptions.
- Simplified:
- [x] `flake8`;
- [x] `pylint`;
- [x] `pmd`;
- [x] `checkstyle`;
- [x] `detekt`;
- [x] `eslint`;
- `radon` does not need to be simplified because it collects only one type of issue (`MAINTAINABILITY`).
- `pythonast` has not been migrated to the new architecture because it works directly with code, not through CLI.
- Added a metric field to some issue tips.
- Added a lot of tests.
- Moved some common files to a separate folder.