Fixed lexer issue with word boundaries and keywords/identifiers.
Added async_chan that uses the old basic channel implementation.  Only chan in is async here