`self.temporaryUser` was holding onto state after it had been initialized, causing issues the second time you tried to switch users.  `[self createUserAccount]` overwrites the temporary account every time, which is what we want here.