A type-safe, fully asynchronous and encrypted SOCKS5 proxy