title: Sort Hashtable by (possibly non-unique) values
body: <p>I have a Hashtable that maps strings to ints. Strings are unique, but several may be mapped to the same integer.</p>
  
  <p>My naive approach was to simply invert the Hashtable to a SortedList that is indexed by the Hashtable's values, but the problem is that you get a clash as soon as two of the Hashtable's strings map to the same value.</p>
  
  <p>What is the most efficient way to list my entire Hashtable (keys and values) ordered by the values? (Where two values are the same, I don't care about their ordering.)</p>