Name: Added Name.Component class and changed Name to use it. Name.getComponent still returns the component value but is deprecated. Added Name.get and Name.size.
Use Name.get instead of getComponent. Use Name.size in stead of getComponentCount.