These are my thoughts on the issue:
#1, Heirloom Respecs: I don't think it's necessary to allow respecs at all, EXCEPT when stat changes to an item are made by the developers. When this happens, anyone who owned an heirloomed item that had it's stats modified should be offered the opportunity to select a different item to heirloom. As WaltF4 pointed out, not allowing this can be very frustrating for a player who put lots of time into developing their build.
#2, Heirloom Trading: Honestly, I hear people cite this as a solution to issue #1, when it simply isn't so. While heirloom trading may help SOME people, and COULD be a nice feature, I doubt it will be used often. Ultimately, the majority of people who no longer want an heirloom probably don't want it because changes were made to the item that make it something totally different from what they want (ie, it sucks). If this is the case, such as the situation with the long awlpike, which was made to be unusable with shields, you'd likely have problems getting someone to trade the devalued item for an item that you want.