First design for plugin architecture.