A versatile centralized / decentralized chat client