Grouping now works

+ Added grpname to the locator so that we could easily track
  whether a locator is in a group.
+ Use uthash and utarray to implement hash table of vectors of
  HDS locators.
+ Internal routine to allow removal of members from a group.

hdsLink and hdsFlush are now in a single file so they can easily
share the data structure.
Remove locators from a group if we are freeing a grouped locator

Otherwise hdsFlush will get in trouble. This seems to happen a lot
in SUBPAR which does not take care to only free grouped locators
using hdsFlush.