reorg the entire plugins framework