This is the main function to create a new Host to which you can
    spawn actors. It will be set by default at local address if no
    parameter *url* is given, which would result in remote
    incomunication between hosts. This function shuould be called once
    for execution or after callig :meth:`~.shutdown` to the previous
    host.

    Nevertheless, it is possible to create locally more than one host
    and simulate a remote communication between them if they are of some
    remote type (`http` or `amqp`), but the first one created will
    be the main host, which is the one that will host the queries from
    the main function.
    Of course, every host must be initialized with a diferent URL(port).
    Although that, more than one host should not be requiered for any real
    project.

    :param str. url: URL where to start and bind the host.
    :return: :class:`~.Proxy` to the new host created.
    :raises: Exception if there is a host already created with that URL.

def create_host(url="local://local:6666/host"):
    '''
    This is the main function to create a new Host to which you can
    spawn actors. It will be set by default at local address if no
    parameter *url* is given, which would result in remote
    incomunication between hosts. This function shuould be called once
    for execution or after callig :meth:`~.shutdown` to the previous
    host.

    Nevertheless, it is possible to create locally more than one host
    and simulate a remote communication between them if they are of some
    remote type (`http` or `amqp`), but the first one created will
    be the main host, which is the one that will host the queries from
    the main function.
    Of course, every host must be initialized with a diferent URL(port).
    Although that, more than one host should not be requiered for any real
    project.

    :param str. url: URL where to start and bind the host.
    :return: :class:`~.Proxy` to the new host created.
    :raises: Exception if there is a host already created with that URL.
    '''
    if url in util.hosts.keys():
        raise HostError('Host already created. Only one host can' +
                        ' be ran with the same url.')
    else:
        if not util.hosts:
            util.main_host = Host(url)
            util.hosts[url] = util.main_host
        else:
            util.hosts[url] = Host(url)
        return util.hosts[url].proxy