Restrict symbol lookups on identifiers only

Use a line tokenizer to be able to recognize strings, comments and
compiler directives.

Fix #22.
Fix #24.