fix(keywords processor): parse the document more effectively

We were generating far too much keyword data. This change improves matters:

* only consider docs that are in a specified set of areas - this means we
don't waste time searching the example code
* the same word list nd keyword map was being used for all the docs,
which was slowing everything down and also producing spurious search results