Fix a wrong test error message
Simplify RunLoop() call and add Stop()
Use sync.WaitGroup for waiting to finish sendICMP4
Add recvICMP4 error handling
Refactor run()
Refactor RunLoop() and change its usage
Add documents
Fix typos
Add error handlings
Fix documents