Added caching functionality, and also cached the UserAccount instance