A python plugin framework