Add return values to Network#startListen()
Split start listening into separate function