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.


A full comment describing this whole algorithm at a high-level would be really great, honestly.