refactor plugins infrastructure
fix topcoat example when used locally