Add support for reading remote avatar

I'm just making a pull request so I can keep track of where this is heading.
Hm... Not sure why this is diff... Maybe I shouldn't have rebased "master" into "feature/24-avatar-irc-user" :(