feat(client): change users_cache to a HashMap, instead of a Vec
feat(client): revamp user details event, send it when needed
feat(client): user cache, and PubUserDetails event