added interval heap implementation and fixed immutslist test code

The interval heap seems to be working. Some more tests are probably needed.

cargo test didn't work for me on immutslist.rs since my version of rustc does not implicitly convert a `[T,..N]` into a `&[T]`. So, I added the necessary ampersands to make it compile.


Well, it's a consistency issue. I didn't like the idea of mixing `%` and `&` for the same thing. The use of `&` makes sense since it's an easy way to set the LSB to zero and make the index even. Sure, I could have used `x - x % 2` instead of `x & !1u` but it wasn't the first thing that came to my mind.