Improvements for future usage by beets

Fixes #1 (closed), #2 (closed), #3 (closed).

Many improvements (some of which required) for future usage in the beets application.

This PR is first composed of several commits that improves the QoL of developers and users of this library (e.g. formatting, linting, type information, code documentation), and then the correction of the three issues.

I tried to limit the number of breaking changes to a minimum, but there are some as it was required to fix issues or error-prone code.

Merge request reports

Loading