PrimitiveIntToken and BitVector feel like very similar classes to me. What exactly is this class providing by extending BitVector, and is there a way to do it without duplicating so much code?