Property Categories of AbstractVisionComponent Incorrect on Module Import

The tag path will not be hardcoded, but couldn't I reasonably instantiate and remove listeners for that tag every time the tag path changes? If so, should I be doing this in the GatewayHook or on the component file itself? Or do I create the TagChangeListener class (found at this forum post) in the Common directory and use it where it is needed?