Plugin system and work on the Protocol