Implement an (in-memory) Avatar cache - reducing the number of disk accesses
when using features that support avatars (e.g. reading msgs, listing files, listing BBSes in the BBS list). When used in the terminal server, the cache is located in bbs.mods.avatar_cache otherwise it's located in the scope of the load()'d library. Applications must use the lib's read() method to take advantage of the cache. The other lower level functions (e.g. read_localuser, read_netuser) by-pass the cache on read but do update the cache with the result. So, generally, avatars should be only loaded from disk one time during a session/logon.
Showing with 41 additions and 6 deletions