
def string_spread(user_string, length, suffix = ''):
	"""Recursive function to turn strings into multiline strings. The function
	   returns a string with line breaks with each line break inserted
	   at the whitespace nearest the beginning of the string.
	   
	   WARNING: function returns None if the string is not capable of
	   being broken down by whitespace i.e. that the longest word in
	   user_string greater than length 
	   
	   user_string  : str
	   length 		: int
	   suffix 		: str
	"""
	if length <= max([len(elem) for elem in user_string.split()]):
		return None
	if len(user_string) <= length:
		suffix += user_string
		return suffix
	else:
		end_ind = length
		while user_string[end_ind] != " ":
			end_ind -=1
		else:
			suffix += user_string[0:end_ind]
			suffix += '\n'
			return string_spread(user_string[end_ind + 1:], length, suffix)
	
		

		