Prime Iterator
Provides API to get next and previous prime number.
USAGE:
iterator = PrimeIterator.new <starting_prime>
iterator.next # get next prime number, starting from ; defaults to 2 if <starting_prime> is not given
iterator.previous # get previous prime number, or nil if previous is called on prime number 2
iterator.reset # resets, next will start at <starting_prime>
iterator.batch_size= # sets the number of prime numbers gotten per fetch (which occurs when previous is called at top of list or next is called at end of list)
iterator.starting_prime= # sets the starting prime. Must call PrimeIterator.reset to take effect.