Null pointers are valid arguments

After some debate I decided to allow a null pointer to be sent which
allows a timer to be initialized which is not intended to have a
function called during the interrupt. Eg. when using it for timing (main
loop wheel spinning) or as part of another module (PWM).