When dealing with untrusted/unreliable clients, it can be dangerous to tie up server resources with slowly-responding client connections. So implement optional timeouts that may be used on a per-call basis. Using an options hash here to allow for future features to be implemented more easily.
This is heavily-based on the existing TCP implementation but seems to work with the limited testing I've done.
Newer versions of Rev depend on a buffer implementation in a package outside of Rev.
… parameters, eliminate usage of Enumerable#reduce, and ensure all specs pass again
…ain to Actor::Mailbox#clear