Some connection sanity

One fix, one new feature:

- 	Re-set the URI when reconnecting to avoid a perpetual unresolved address condition

In cases where the initial connection failed due to a DNS lookup error, the component is no longer able to reconnect even after normal conditions have been stored.

My change re-sets the connection address to cause a new DNS lookup to be performed.

-      Add OnClosed event to notify if the eventsource gets dropped temporarily

I needed my program to be aware if the connection was down at any point, so I plumbed in the OnClosed event to provide notifications of this, along with a "WillReconnect" indicator.