Add checks to guard against overflow in iterator methods. #76
When a generated iterator runs of the end it keeps on incrementing the index variable, which is undesirable. Furthermore the size_hint method does not guard against the index being greater than the variant count, which causes an overflow.
These issues cause our static analyses tool to generate warnings when analyzing code generated by strum, which is annoying.
Thanks for considering this.