added Broccoli and some plugin refactoring