moved responsibility out of recorded calls

Now the strategy takes more responsibility for matching,
ContainsStartingFromCurrentPosition() is no more and instead,
RangeFromCurrentToEnd() is introduced.