Timer should be able to be cancelled more than once

It used to work in 3.0.1, so I think this should be a bug?
I agree this makes the test suite much slower. I wrote this because I saw there were other tests using sleep and I thought it's ok to you. Since there's no tests for `Timer#cancel` yet, what would you recommend to write for one? Personally for time based tests, I would use mocks. But I am not sure if that's desired, as it would also make the test less reliable.