input: Write a python function to create a TCP server that handles multiple connections and echoes received messages back to each client.
  assert isinstance(create_tcp_server(10000), socket.socket)
  assert create_tcp_server(10000).getsockname()[1] == 10000
  assert create_tcp_server(20000).getsockname()[1] == 20000
output: import socket
  import threading
  
  def handle_client(client_socket):
      while True:
          message = client_socket.recv(1024)
          if not message:
              break
          client_socket.sendall(message)
      client_socket.close()
  
  def create_tcp_server(port):
      server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
      server_socket.bind(('0.0.0.0', port))
      server_socket.listen(5)
      
      def accept_connections():
          while True:
              client_socket, addr = server_socket.accept()
              client_handler = threading.Thread(target=handle_client, args=(client_socket,))
              client_handler.start()
      
      accept_thread = threading.Thread(target=accept_connections)
      accept_thread.start()
      
      return server_socket