public class StickyStrategy<T>
This strategy uses a master strategy to pick the initial instance. Once picked,
that instance is always returned. If, however, the currently selected instance
is no longer in the list, the master strategy is used to pick a new instance.
Each time a new instance is picked, an internal counter is incremented. This way you
can track when/if the instance changes. The instance can change when the selected instance
is not in the current list of instances returned by the instance provider