restructure
multimethod api
add mod.json