+ can: specific exceptions for connection refused and request timeout

I would like my application to be able to react to request timeouts and connection failures returned from spray client. Examples:

 * Reporting the error to a monitoring system
 * Returning a detailed error message from a REST API when peer services timeout.

Currently all exceptions from http client come back as plain `RuntimeException`s. This pull request makes them more specific `Exception`s.

Post on mailing list: https://groups.google.com/forum/#!topic/spray-user/RLSMUb1MBcw