def feat(self,k,v):
		"""
		Store value 'v' as a feature name 'k' for this object.
		Features are stored in the dictionary self.feats.
		[IMPORTANT NOTE:]
		If the feature 'k' is not yet defined, then:
			self.feats[k]=v
		OTHERWISE:
			self.feats[k] becomes a list (if not already)
			'v' is added to this list
		"""


		if (not hasattr(self,'feats')):
			self.feats = {}
			if (not hasattr(self,'featpaths')):
				self.featpaths={}
		if (not k in self.feats):
			self.feats[k] = v
		else:
			if type(self.feats[k])==type([]):
				self.feats[k].append(v)
			else:
				obj=self.feats[k]
				self.feats[k]=[obj,v]
Store value 'v' as a feature name 'k' for this object.
		Features are stored in the dictionary self.feats.
		[IMPORTANT NOTE:]
		If the feature 'k' is not yet defined, then:
			self.feats[k]=v
		OTHERWISE:
			self.feats[k] becomes a list (if not already)
			'v' is added to this list