Convert doted-written FQDN address to WFQDN object

		:param address: address to convert
		:return: WFQDN

def from_string(address):
		""" Convert doted-written FQDN address to WFQDN object

		:param address: address to convert
		:return: WFQDN
		"""
		if len(address) == 0:
			return WFQDN()

		if address[-1] == '.':
			address = address[:-1]

		if len(address) > WFQDN.maximum_fqdn_length:
			raise ValueError('Invalid address')

		result = WFQDN()
		for label in address.split('.'):
			if isinstance(label, str) and WFQDN.re_label.match(label):
				result._labels.append(label)
			else:
				raise ValueError('Invalid address')

		return result