added return for connection methods to pipe plus made callbacks omission safe