Implemented iproduct(). #17

itertools2::irep() needs to be modified so that it matches base::rep()
when both the `times` and `each` args are provided.

In doing so, iproduct() will behave properly, and the tests will
pass. As a sidenote, if itertools2::irep is replaced with base::rep
within iproduct(), the tests pass.