MANTA-2315: Improve connect attempt error events

- Use setTimeout to track connection timeouts
- Emit connectError for errors/timeouts during connection
- Add tests for connection failure scenarios
Update node-backoff dependency

Using backoff.call in version > 2.4.0 results in a memory leak when
retrying indefinitely.
Convert to tape/faucet/istanbul for tests
Add optional error when calling undefined RPC
MANTA-2315: Simplify socket error/close events

Certain socket conditions were causing 'error' events to go unhandled,
potentially due to improper ordering in the cleanup logic.