created a new console app and created multiple versions of the same program via our different apis.
Caching the hashcodes of certain classes because DnsEndPoint's GetHashCode method seems excessively heavy.
added more exception types for immediate invalidation in ClusterableServer.
removed AsyncBackgroundTask and used async void methods to run background tasks.
removed AsyncBackgroundTask.
a little cleanup.
Merge branch 'rs_recovery'