move palette generators to own package