Getting rid of hardcoded string nags
Changing ComponentFactory to use a table rather than all elseifs