XD-709,710,711: Refactor plugins

Also, I guess AbstractPlugin could benefit from some cleaning / generalization, but that could be another story.