Rename filter.js to filter-authors.js
Move and clarify comment about initial filters
Replace private variable fieldNames with shared property 'field-names'
Initialize field positions in a subscription to "field-names"
Rename 'count-records.js' to 'count-author-records.js'
Rename 'count-selected.js' to 'count-selected-authors.js'
Rename 'code-selected-percentage.js' to 'code-selected-author-percentage.js'
Rename 'print-selected.js' to 'print-selected-authors.js'
Rename 'list-selected.js' to 'list-selected-authors.js'
Publish "categories" based on selected grouping criteria
Add module to display the total number of current categories
Rename 'filed-names' property to 'author-field-names'
Move percentage() to utils module for reuse across modules
Rename 'filtered-data' property to 'selected-authors'
Bug fix: do not count header row in categories
Publish two events instead of returning one result array in filter()

Two results are published: the list of selected authors in the property
"selected-authors" and the array of flags to indicate whether an author
is selected or not, in the property "selected-authors-flags".
Do not expect author id to match author record position necessarily

I changed the code to use the authorId retrieved from the record
rather than the record position where the author id is expected.

EDIT: I actually noticed after this commit that my initial assumption
was false: there are 4391 authors in current data, but author ids go
up to 5017.
Add module to filter categories
Move count() function to new module csv-utils.js
Simplify implementation of count-selected-authors-percentage.js