+ precise source range for leading/trailing ws
+ add some documentation for parser