You can achieve this effect with CSS (which is what Google are doing) without changing the image file itself. See: http://bavotasan.com/2011/circular-images-with-css3/
This will work in most browsers, but not IE8 or older. See: http://caniuse.com/border-radius
This will give you a database of IP ranges and associated country. You can query this with PHP to find out the country for a given IP address.
Make sure you read the license conditions. You will also need to keep the data updated, as otherwise it will get less accurate over time.
If the question you want to answer is genuinely "Where can I find a CMS/forum that has these features." then CMSmatrix has a search facility that enables selecting from over 1000 CMS by choosing the features you want.
In addition, you may then want to then use opensourcecms.com which allows the trialling of around 350 different popular CMS without ...
I have used MediaWiki for about two years in the previous company, and had so much trouble with it. The notation is cumbersome, weak search engine, and pages have no clear hierarchy.
If you can afford a paid product, you should seriously consider looking into Confluence. If you require PHP, MySQL with a strong search engine consider having a look at ...
Your question is very broad since there are a lot of moving parts that go into building a good messaging stack:
message storage for when users are offline
long polling or websocket management for getting messages "pushed"
media handling so that users can share files
permissions and moderation to kick out abusive chatters
(source: I helped design ...
This can be done using Webmail via Cpanel.
When logging into example.com/webmail, before you are 'auto-loaded' into the specific webmail program (such as Roundcube or Horde), there is an option at the bottom to change your password.
The only trick is that the users first have to login successfully to webmail before changing their password.