Fix lexer::get_text_and_column on string inputs.
Fix lexer::get_text_and_column on string inputs.

`lexer::get_text_and_column` was treating the second argument to
`std::string::substr` as a position and not a length, resulting in incorrect
source lines when parsing from strings.

peterhuene/puppetcpp