For the timer you just need an array of values: a start time and a duration.
The hard part is going to make this user controllable, you really have to think carefully about what kind of user interface you want there.
And anyway, as with all such projects: start with one thing, get it working, then add the next part. Build it up bit by bit.