Have you considered using a custom column for your groups? Use "comma separated text, like tags, shown in tag browser". Or if all your groups are pre-defined and you only have one per book, you can use "text, but with a fixed set of permitted values".
With the tag browser open, you can then drag-and-drop books from the list into their groups. Any given category would have to be assigned to at least one book before you can use drag-and-drop.
|