[ANALYZER-1545] - Ability to show data labels on charts and visualizations

* This satisfies some advanced (somewhat exoteric) delegation scenarios required to correctly handle the visibility of value labels
** pv.Mark#evalInPropertyContext enables evaluating a function as if it had a given property as "target" of delegate (in case it is called);
    This is used to call the user extension point, or the default value, of the property "text" when we're currently evaluating property "visible".
    Calling pvMark.text() is not possible because it would evaluate the top-level text handler installed by pvc.visual.Sign#_bindProperty.
    Evaluating the later, on the other hand, requires knwong if we're hidden or trimmed. There's the dependency cycle.
** pv.Mark#delegateTo is a counterpart to pv.Mark#delegate that allows specifying a tag *not* to choose.