WIP connection abstraction with failovers
Connection fallback logic now lives inside FallbackConnection, user wired with more abstracted Connection object