Updated Connection Interface

I've added a few methods to the interface to better reflect the important methods that we actually expect to exist on implementations.