Add ConnectionController and fix InstanceExtender#ConnectionListener