ENH: Define halo_link_t struct datatype
ENH: Store descendants in descending order

Stored descendants in descending order according to their mass.
The most massive halo is always returned as the Descendant ID of
the node.
ENH: Update GetTotalNumberOfBytes for Descendants

The descendants are now a list of halo_link_t objects instead
of ints. Therefore, GetTotalNumberOfBytes must take that in to
account.