- Add mechanism to persist failure reason while continuing to reconnect
- Add 'warning' attribute for failure conditions that may be temporary,
but still need to be reported
- Add logging for failures
- Prevent possibly temporary server-side conditions from blocking
reconnect attempts
- Detect icecast 2.4 auth failures
- Prevent generic errors from overriding existing error state
the lost connection timeout from default of 60 seconds down to 5 seconds
so that the connection state updates more quickly. Removed complex
error handling and replaced with a simpler approach to catch an error
and disconnect and then attempt a reconnect.
Added new 'Network Unavailable' error state that detects when the network
connection is unavaialable.
Updated the icecast metadata updater to close the TCP session after
successfully writing metadata to the socket.