Allows for a cleaner and more flexible implementation of new HUD elements. The old implementation was not intended to support quite as many elements as it does, and now there is some need for API-specific HUD elements.