Added implementation of heap data structure