refactor track generation into smaller objects

Signed-off-by: Ethan Vizitei <ethan.vizitei@gmail.com>
Constant color configuration switch