Add a caching line_text function for the common operation of getting the text of a line
Convert all filter(x,stringp)*"" into line_text(x)
search: Stop caching the text, since line_text will do most of that for us