Added the ability to randomise, also consilidated som ecolours
Made the code more resilient against bad things