feat(peer_server): stop service when removed

It doesn't modify the exit logic, but makes external code know
when removal happens and decide what it should do.
refactor(server): add Client struct

This is used to send request to web API.
It will do this behavior a lot in standby mode, so I abstract this
struct first.