Changing the implementation to be one object that holds onto a collection of pins rather than a single object for all pins. I feel the implementation is cleaner this way.