Minor fix
Add test for nested heredocs
Support heredoc in string literal

Add `return_when_finding` option to `search`
Reimplement highlight in Ruby (not semantic)
Fix bug in `search`

`return_when_finding` param wasn't passed in reccuring.
Implement semantic highlight [wip]

* Some tokens won't be highlighted.
  Currently, only tokens represented as `name` and `selector`
  in Parser::Source::Map (ParserAST::Node#loc) are supported.

* `extract` is changed to
   return [location of start expression,
           location of end expression,
           AST node].

* Because of the change on `extract`, all tests fail.
  I'll fix them later.
Minor fixes
Use `wrap` in test.rb
Fix bug
Fix tests