Enable object collections

A tentative set of changes to move from all collections being sets of strings toward generic object collections.

Builds without complaints, but untested as yet as I'm lacking appropriate files and setup to do so at the moment.