With reference to the part of the question that asked, "why would I want to use hard links at all?":
Hard-linked files (or for that matter soft (symbolic)-linked ones offer a useful way of having a single executable file that can be made to masquerade for different purposes.
That is, the name by which the code is invoked can be examined in order to determine what options are available for execution. This allows the development and packaging of one large piece of code with all the shared functionality needed for slightly different purposes. From the user's perspective, the specification of "what" to run (by name) limits the choices and presentation to a more manageable subset of options.
A classic example is LVM. At one time HP-UX used hard-linked files for the various executables (e.g. vgdisplay, vgcreate, vgextend, etc. Today, like Linux, these commands are actually symbolic (soft) links to the lvm executable.