processed() :: term
result() :: term
extract_data(processed) :: [result]
extract_links(processed) :: [String.t]
parse(url :: String.t, body :: String.t) :: processed