Add plugin mechanism