Add plugin proxy API for document datalist functions

This makes it easier/safer for plugins not to leak resources when
they are unloaded, rather than them having to explicitly remove the
data list entries.