code: def sort(self, key, reverse=False, none_greater=False):
          '''Sort the list in the order of the dictionary key.
          Example of use:
          >>> test = [
          ...    {"name": "Jim",   "age": 18, "income": 93000, "wigs": 68       },
          ...    {"name": "Larry", "age": 18,                  "wigs": [3, 2, 9]},
          ...    {"name": "Joe",   "age": 20, "income": 15000, "wigs": [1, 2, 3]},
          ...    {"name": "Bill",  "age": 19, "income": 29000                   },
          ... ]
          >>> print PLOD(test).sort("name").returnString()
          [
              {age: 19, income: 29000, name: 'Bill' , wigs: None     },
              {age: 18, income: 93000, name: 'Jim'  , wigs:        68},
              {age: 20, income: 15000, name: 'Joe'  , wigs: [1, 2, 3]},
              {age: 18, income: None , name: 'Larry', wigs: [3, 2, 9]}
          ]
          >>> print PLOD(test).sort("income").returnString()
          [
              {age: 18, income: None , name: 'Larry', wigs: [3, 2, 9]},
              {age: 20, income: 15000, name: 'Joe'  , wigs: [1, 2, 3]},
              {age: 19, income: 29000, name: 'Bill' , wigs: None     },
              {age: 18, income: 93000, name: 'Jim'  , wigs:        68}
          ]
          >>> print PLOD(test).sort(["age", "income"]).returnString()
          [
              {age: 18, income: None , name: 'Larry', wigs: [3, 2, 9]},
              {age: 18, income: 93000, name: 'Jim'  , wigs:        68},
              {age: 19, income: 29000, name: 'Bill' , wigs: None     },
              {age: 20, income: 15000, name: 'Joe'  , wigs: [1, 2, 3]}
          ]
          .. versionadded:: 0.0.2
          :param key:
             A dictionary key (or a list of keys) that should be the
             basis of the sorting.
          :param reverse:
             Defaults to False. If True, then list is sorted decrementally.
          :param none_greater:
             Defaults to False. If True, then entries missing the key/value
             pair are considered be of greater value than the non-missing values.
          :returns: self
          '''
          for i in range(0, len(self.table)):
              min = i
              for j in range(i + 1, len(self.table)):
                  if internal.is_first_lessor(self.table[j], self.table[min], key, none_greater=none_greater, reverse=reverse):
                      min = j
              if i!=min:
                  self.table[i], self.table[min] = self.table[min], self.table[i]
                  self.index_track[i], self.index_track[min] = self.index_track[min], self.index_track[i]
          return self