small primitives optimisation and cleanup
tidy up scale
move context manipulation to own file, change color extraction
move animation to own file, some cleanup
clean up utils, optimize and rename random functions
keep text properties in instance vars
add Color class