added some utility methods to component.PNCounter
refactored MPNSet to use component.PNCounter