use NewScanner instead of SetScanner in test
add Scanner benchmark
remove one allocation in Scanner.FeedRune