FIX: Avoid GetSID() error when no W mapping.

With :let g:csv_nomap_w = 1, no "W" mapping exists, and the maparg() lookup of the SID fails.
Add a fallback to the alternative algorithm using <sfile>.
Refactoring: Replace s:GetSID() with a cached s:SID value.

As the script's SID is fixed, it needs to be determined only once during sourcing. Remove the version-dependent algorithm that is using maparg(), as this won't work during sourcing. This makes the script simpler and more robust by trading one persisted Integer for runtime function calls.