Defines the interface required by LabelCell for implementing different
types of labels. LabelCell utilizes the state design pattern to change
its behavior (state) without additional subclassing by delegating its
implementation to the methods defined here. Thus for example, different
LabelCell implementations can be provided for row and column labels (i.e.
LabelCell.COLUMN_LABEL and LabelCell.ROW_LABEL) by providing different
implementations of this interface and passing the appropriate instance
to LabelCell's constructor.