Refactor refs_to to store heap addresses rather than pointers.
Refactor to seperate building back references from parsing.

This will make it easier to re-use the parsing code for performing a diff
with a second heap.
Refactor to add objects to the heap in parseFile.

This makes it possible to re-use functions for parsing heap objects when
they aren't going to be added to the heap.
Refactor parse_file to extract reading heap objects a helper function.

This further decouples the code for adding an object to a heap from parsing
the heap objects.