def load(force_load = false)
      if not @hosted_services || force_load
        @hosted_services = begin
          hosted_services = Hash.new
          responseXML = @connection.query_azure("hostedservices")
          servicesXML = responseXML.css("HostedServices HostedService")
          servicesXML.each do |serviceXML|
            host = Host.new(@connection).parse(serviceXML)
            hosted_services[host.name] = host
          end
          hosted_services
        end
      end
      @hosted_services
    end
def load(force_load = false)
      if not @hosted_services || force_load
        @hosted_services = begin
          hosted_services = Hash.new
          responseXML = @connection.query_azure("hostedservices")
          servicesXML = responseXML.css("HostedServices HostedService")
          servicesXML.each do |serviceXML|
            host = Host.new(@connection).parse(serviceXML)
            hosted_services[host.name] = host
          end
          hosted_services
        end
      end
      @hosted_services
    end
force_load should be true when there is something in local cache and we want to reload
 first call is always load.