SmrPort: only clear NPC cache on update
SmrPort: only clear NPC cache on update

The `cacheIsValid` attribute properly tracks whether the NPC cache
needs to be cleared, so we can manage this in the `update` method
instead of in each individual method.

This is operating under the principle that most methods should not
touch the database, if possible.

smrealms/smr,hemberger/smr,hemberger/smr,hemberger/smr,smrealms/smr,smrealms/smr,hemberger/smr