Fix a collider's cached monument not being invalidated if the collider moves
- no evidence of this happening but best to be safe
Rename `MonumentColliderTag` to `CachedMonumentComponent` to make it a lot clearer what it does
Add `GetOrAddComponent()` to ComponentEx instead of using the VLB namespace