Removes a lot of the offset-by-1 indexing, notably in the `GameStrings.GetLocationName` method which shifted everything 1. BDSP files we dumped don't replicate this off by 1, and I don't see a reason to maintain this off-by-1 for prior games since it's unnecessary quirks to maintain.
Zero indexed ftw.
Big thanks to @SciresM @sora10pls @Lusamine @architdate @ReignOfComputer for testing and contributing code / test cases. Can't add co-authors from the PR menu :(
Builds will fail because azure pipelines not yet updated with net6.
O(n) for speed & memory usage, as good as we can get.
Modified method is now less dumb. Array Copy doesn't have to worry about same-array overlapping src/dest regions