Fix !waitforit command

Changed the adding of seconds in the !waitforit command parser to a
version which correctly adds to the time.
Add TimeActions.hs

Add function to update the list of timed actions and return the actions
which should be executed at that time.
Partially implement timed actions

Timed actions now work, but we still have the problem of the listen
loop halting till new input is available.
Fully implement timed actions

The listen loop now continues after 100 ms even if it doesn't receive
input, enabling the possibility of output without any activity in the
channel.