More Enum.equal? stuff

Added a specialization for Range, because it could do a lot of useless work when comparing two ranges.

Also added `Enum.equal?/3` with an additional function to check for equality, useful in many situation, and also to easily compare with `===` instead of `==`.