Every control used by the KML should inherit from this class. It contains common functionality and basically serves as a reference to what needs to be implemented in the descendants.
Controls added to the KML document will be notified by the update of the Kml document. Hook is method which is called once, when the element is updated. It is necessary to be careful and hook the element only once. The other solution is to make sure the ids will be used correctly.