Scanner

## Overview

This commit adds a pure Go implementation of the InfluxQL scanner. It includes support for:

- Identifiers
- Numbers
- Strings
- Durations
- Booleans
- Numeric and logical operators
- InfluxQL keywords

The scanner also tracks line and character position for each token and normalizes newlines (`\n`, `\r`, `\r\n`) into `\n`.

The scanner has 100% test coverage using a table test in `TestScanner_Scan`.

---

/cc @pauldix @toddboom 
I don't quite follow the 'literal string' business, when I see code below return a literal string of "" for many characters. '=' for example.