Revert "Revert "suupport auth key, support auto reconnect, fix some bug""

This reverts commit aae7c255bb823e81489366a310ce94d0d7e4d466.
Revert "remove useless files, fix bug when server part listening port fail, try to retry listen"

This reverts commit e3ac3c7cd70b4162038be080141f3d98b0ec9a84.
Revert "test"

This reverts commit 5f19371be787e7373629f27608dddbb7ed23dd24.