Avoid Name.Function for identifiers after brackets

There were too many false positives:

    (let ([x 1]) x)
    (define-values (x y) (values 1 2))
    #hash((x . 1))
Use Name instead of Name.Variable

The remaining identifiers may be symbols or user-defined syntax, so
Name.Variable is misleading.
Update keywords and built-ins to Racket 6.0.1
Add .rktd extension and fix .-initial identifiers
Lex all symbols as String.Symbol

It doesn't yet distinguish between quote and quasiquote.
Distinguish between quote and quasiquote
Make `quote`, etc., equivalent to their shorthands