Fixes #410 Still some cleaning up to do, and we need a way for incomplete palettes to inherit from a base palette.