feature: set_timeout() now returns the result of the operation. thanks Guanlan Dai for the report.