Cached Channels keep a local cache of the members of that channel. This commit adds a synchronus method to access the cached user stores.
It also fixes a bug where the GetUser extension would return an IGroupUser by soft-casting to IGroupUser, which would always return null. ISocketUser does not share an inheritance with IGroupUser, so I now return IUser instead.