Data management tools for playing BattleTech

feat(unit-search): filter by the book a design comes from master

The column joins the books with commas - `TR:3039,TR:SW` - so it is split into a list and matched as one. A substring test would find `TR:303` inside `TR:3039`, which is why this was held back. `list_facets` names the twenty commonest, since a caller cannot ask for a book without knowing how it is spelled.


+116 -5
6 changed files