refactors addTime mechanism so that the Clock gets any added time from the Game.

this makes it easier to deal with bonuses when the Clock is created every time
but the Game comes from some persistent store - e.g. for restored games in Lightsquare
fixes Clock.getTimeLeft - add addedTime before Math.max-ing with 0
allows not passing a colour to get both colours in Game.getAddedTime