refactor: move functions around, add comments

* also use LINE-BEGINNING-POSITION when searching code snippets
fix: parsing bugs, was adding too much whitespace...
add: use ECCO--LEXER-ARGS, but return always cl lexer for testing
fix: simplify ECCO--PIPE-TEXT-THROUGH-PROGRAM