Add heap sort implementation

What if I went:

````rust 
fn main() {
    let mut a:int = 5;
    
    while a - 1 >= 0 {
        println!("{}", a);
        a -= 1;
    }
    
    println!("Done");
}
````