def read(path, options = {})
      headers = extract_headers!(options)
      json = client.get("/v1/#{encode_path(path)}", {}, headers)
      return Secret.decode(json)
    rescue HTTPError => e
      return nil if e.code == 404
      raise
    end
def read(path, options = {})
      headers = extract_headers!(options)
      json = client.get("/v1/#{encode_path(path)}", {}, headers)
      return Secret.decode(json)
    rescue HTTPError => e
      return nil if e.code == 404
      raise
    end
Read the secret at the given path. If the secret does not exist, +nil+
 will be returned.

 @example
   Vault.logical.read("secret/password") #=> #<Vault::Secret lease_id="">

 @param [String] path
   the path to read

 @return [Secret, nil]