The code compiles again, and it seems to work as it did before. There's still a lot to do (we still have a mess of globals), but the PE correctly calls the new DPM functions via the list of callbacks in the configuration object.