Implement new update system