> We're going to need an extra layer of validation here that confirms the preferences is an allowed key and that it is a valid type.

Good catch!

> We could maybe have the DEFAULT_PREFERENCES object in it's own file and include here and in the viewer.

Great idea, will implement this asap.