code: func uriContent(uri *url.URL) ([]byte, error) {
  	// TODO: Support file://
  	scheme := uri.Scheme
  	switch scheme {
  	case "https", "http":
  		req, err := http.NewRequest("GET", uri.String(), nil)
  		if err != nil {
  			return nil, err
  		}
  		req.Header.Set("User-Agent", fmt.Sprintf("Empire (%s)", empire.Version))
  		resp, err := http.DefaultClient.Do(req)
  		if err != nil {
  			return nil, err
  		}
  		defer resp.Body.Close()
  		if resp.StatusCode/100 != 2 {
  			return nil, fmt.Errorf("unexpected status code: %d", resp.StatusCode)
  		}
  		return ioutil.ReadAll(resp.Body)
  	case "file":
  		return ioutil.ReadFile(uri.Path)
  	default:
  		return nil, fmt.Errorf("not able to fetch content from %s via %s", uri, scheme)
  	}
  }
docs: // uriContent fetches the content from the URI. It supports http://, https://
  // and file:// schemes.