Update to maven-plugin-api 3.1.1
Use plugin annotations
General code clean up
Refactor code and improve test coverage