Add support for reading remote avatar

I'm just making a pull request so I can keep track of where this is heading.
@marcusramberg: Now it's actually a failing TODO test :+1: