full cleanup and reorg