hash for IntSet

There was no implementation of `hash(s::IntSet, h::Uint)` for `IntSet`s, and the fallback is `hash(x::ANY, h::Uint)` ([here](https://github.com/JuliaLang/julia/blob/1c5a76d494601464ed7dc6bc393d6848e1954c36/base/hashing.jl#L8)), so `isequal(a::IntSet, b::IntSet)` did not imply `hash(a)==hash(b)` per the [manual](http://docs.julialang.org/en/latest/stdlib/base/?highlight=hash#Base.isequal).

This pull request implements `hash(s::IntSet, h::Uint)`. 
Yes, rand(Uint) gave me that.
On Jul 7, 2014 5:49 PM, "Stefan Karpinski" <notifications@github.com> wrote:

> In base/hashing2.jl:
>
> > @@ -181,6 +181,18 @@ function hash(s::Set, h::Uint)
> >      return h
> >  end
> >
> > +function hash(s::IntSet, h::Uint)
> > +    h += uint(0x88989f1fc7dea67d)
>
> I assume this is just an arbitrary random Uint64 – that's how I generated
> the rest of them.
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/JuliaLang/julia/pull/7532/files#r14631823>.
>