Raise Celluloid::TimeoutError on mailbox timeout

cc @halorgium 

Previously mailboxes would simply return nil upon timeout. This made it difficult to disambiguate when timeouts occurred versus other events.

This changes mailboxes to raise a TimeoutError when timeouts occur.