Allow the lexer to return the original string

Together with https://github.com/doctrine/annotations/pull/14 allows for better annotation error reporting.

We need to store the input string because the preg_split throws away the patterns from `getNonCatchablePatterns()` including line breaks.