All data stored in NSUserDefaults is saved in plain text, which makes it really easy for an attacker to retrieve the info they need to get a user's credentials. And while encrypting the passwords yourself might seem like a good idea, it gets bad quickly when the inputs used to encrypt and decrypt this data are readily accessible:
Key: Cal<3sEncryption
IV: TrustMePlsssssss
This is why letting iOS handle these things is a good idea.
Not sure what's causing this one. Reloading the Table View brings back the classes, but it definitely needs to be fixed.
My hunch is that TSAuthenticatedReader is somehow getting deallocated / released, because I'm not sure what the retain / release life cycle is for global variables.