FEAT: handle special float literal 1.#NaN and +/-1.#INF.

FIX: lexer can't handle string like "-.3".
TESTS: added tests for special float literal.
Merge pull request #865 from qtxie/float

FEAT: handle special float literal 1.#NaN and +/-1.#INF.