alwaysauth requires restart for contacts to appear in roster.
I've not had time to check more of this, so I've just got this one example: If you have alwaysauth=True, then when you register for a transport, none of the contacts show up in the roster until after a restart. Until then, they appear in 'not in roster' when they message you, with an unknown presence.