Mod Compatibility API

See #304, rebased onto d16950eb3e5e87be03f701465b48100f5c4343d2 and reopened targeting develop.