move colour to seperate packages, change interface