Make some of the enum collections safer

This starts part of my work on improving EchoPet code. This is not as major as the SQL support rewrite I did, and mostly has positive benefits.

By using immutable collections, we shield against odd data being inserted, which could cause... interesting behavior. Better safe than sorry.