ComponentManager now uses an ArrayList instead of a HashMap.