docs: def start_txn(self, txn_name=None):
  
  		'''
  		Request new transaction from repository, init new Transaction,
  		store in self.txns
  
  		Args:
  			txn_name (str): human name for transaction
  
  		Return:
  			(Transaction): returns intance of newly created transaction
  		'''
  
  		# if no name provided, create one
  		if not txn_name:
  			txn_name = uuid.uuid4().hex
  
  		# request new transaction
  		txn_response = self.api.http_request('POST','%s/fcr:tx' % self.root, data=None, headers=None)
  
  		# if 201, transaction was created
  		if txn_response.status_code == 201:
  
  			txn_uri = txn_response.headers['Location']
  			logger.debug("spawning transaction: %s" % txn_uri)
  
  			# init new Transaction, and pass Expires header
  			txn = Transaction(
  				self, # pass the repository
  				txn_name,
  				txn_uri,
  				expires = txn_response.headers['Expires'])
  
  			# append to self
  			self.txns[txn_name] = txn
  
  			# return
  			return txn