Support swappable user models