Begin with Component-Based system
Updated
Cleanup