I'm a remote worker, so I have switched to tmux + console emacs (some guys prefer vim). That works much better than ScreenSharing and a typical GUI editor.
I've checked out wemux, but it didn't solve my pain-point which was the ssh setup at the remote end.
The bigger deal is not whether your team has the tools. But whether they use the tools. Co-located people may talk in campfire/irc/group chat, and some may not even log in. But remote workers depend on it.
Next most used communication method are internal P2s - http://p2theme.com/ - which is great for async communication. With people all over the world it is important to have a good async communication method.
Another reason both IRC and P2 are so important is that they have URLs for history. Anyone in the company can go back and read through the discussion.
The third communication method is Skype/Google Hangout. Many teams will have a regular (weekly is common) voice or video chat, generally less than an hour.
We have some glue tying these together and we use some in-house development wiki's and live-editing tools for producing faster and collaborating better.
Thanks for wemux; that looks really great :)
But for actual coding I've found http://pair.io (using tmux) to work fantastically; I can't wait for them to come out of private alpha.
Any important discussions happen in Ginger (https://gingerhq.com) so people can participate asynchronously (disclaimer: its a product we built).
Once a week we have an optional staff meeting that happens in Google Hangout.
For the tech side, we rely heavily on GitHub and sometimes Pivotal Tracker.