Reorganize the plugin and produce a dispatch_default function instead of init