Cleanup, changed to a more modular system