Programmatic Color Generation: Algorithms for Dynamic Palettes