[Icons] Add getAsset to AbstractComponent
[Icons] Add getAsset to type info classes
[Icons] Add abstract class TypeInfo

Adds the abstract superclass TypeInfo for
ComponentTypeInfo, ViewInfo, etc. Serves as a
common container for class information, and
supports getAsset() calls (without requiring
these shorthands to be implemented separately
for every type described in this manner.)

Future enhancements may include support for
PolicyInfo, and addition of ActionInfo.
[Icons] Remove references to AbstractComponent.getIcon
[Icons] Fix icon coloration