the interface(s) the returned avatar should implement, e.g.
IMailAccount. See the description of Portal.login.

Returns

a deferred which will fire a tuple of (interface, avatarAspect, logout),
or the tuple itself. The interface will be one of the interfaces passed in
the 'interfaces' argument. The 'avatarAspect' will implement that
interface. The 'logout' object is a callable which will detach the mind
from the avatar.