Python plugin architecture