Standard implementation of the UIComponent base class; all standard JSF
components extend this class.
Disclaimer: The official definition for the behaviour of
this class is the JSF 1.1 specification but for legal reasons the
specification cannot be replicated here.
A custom implementation of the Map interface, where get and put calls
try to access getter/setter methods of an associated UIComponent before
falling back to accessing a real Map object.
Some of the behaviours of this class don't really comply with the
definitions of the Map class; for example the key parameter to all
methods is required to be of type String only, and after clear(),
calls to get can return non-null values.