Add onLineContaining ...

...as it will often be easier to test against a particular line by referencing its content rather than figuring out the line number.
I don't think we'd want `atText` just because the likelihood that you'd be able to start the text at the exact right column and be able to find a unique substring in the file seems too low to make the api all that useful.