Range interface for std.container.BinaryHeap

Fixes Issue 12358

See discussion here: https://github.com/D-Programming-Language/phobos/pull/1886
Merge pull request #1989 from Poita/binary-heap-range

Range interface for std.container.BinaryHeap