- more intelligent reconnection (depending on whether client or remote network is down)
- override status output with more suitable messages (and signify reconnection attempts)
- update profile config on (menu-based) restart
- safer code (especially services)
- general refactoring