Allow the ability to select the numeric type used in calculations

...allow the user to determine accuracy vs speed tradeoff.
Speed improvement: Don't traverse entire queue to determine count.

reduce the tests