title: remote_endpoint: Transport endpoint is not connected
body: <p>Exception is emitted from <code>io_service:run</code> on Linux.</p>
  
  <p>This is what happens. I implemented simple asynchronous echo server using Boost.Asio. It is single threaded and everything is asynchronous, that is I use only asynchronous versions of accept, send and receive functions. When a client doesn't disconnect gracefully (e.g. it crashes) server's event loop throws boost::system::system_error exception <strong>remote_endpoint: Transport endpoint is not connected</strong>. Why it happens an how to deal with it? Is it caused by SIGPIPE signal? If so, what is the best way to keep the server running? Handle exception or handle signal?</p>