use m2 repository by default and allow only a callback
major refactor
v0.0.3