Implement lexer for Elixir language.

This is a direct port from pygments.
See https://bitbucket.org/birkenfeld/pygments-main/src/7304e4759ae65343d89a51359ca538912519cc31/pygments/lexers/functional.py?at=default#cl-2362
Handle whitespace as 'Text' and not 'Text.Whitespace.

This commit removes many whitespace nodes which aligns
Elixir code correctly.
Remove stray mixin.
No need to escape regexp's as Ruby does it for us.
Make long Regexs more readable.
Lex double colon as Punctuation.
Merge remote-tracking branch 'pr/84'
add a demo for elixir
Add Racket lexer, and switch *.rkt to it from Scheme.

- .rkt, .rktd, .rktl files
- Accept   \u03BB lambda character
- Long list of keywords and very long list of builtins
- Numeric constants like -inf.0, +inf.0, -min.0, +max.0 and friends
- Add test (and adjust Scheme test)
- Add to visual/samples
racket: add detection for '#lang racket'
racket: fix indentation #cosmetic
Merge branch 'racket'
update the php builtins via `rake builtins:php`
racket: add lower-confidence guessing for #lang
racket: use a real λ, and include [:alnum:] in `id`

[:alnum:] will capture any unicode character designated as alphanumeric,
in particular greek and cryllic characters.
Updates to Racket lexer:

- Actually the \u03BB lambda char does work fine inside %w() with the
  others.
- Since Racket allows identifiers to consist of nearly anything,
  instead of describing what they are, describe what they are _not_.
- Handle quasiquote as well as quote.
Merge pull request #87 from greghendershott/racket-lexer-ids

Updates to Racket lexer
v0.3.9
add the license to the gem source
add a link to the wiki instructions to the README