Introduce RemoteCollection.Rename.

Ready to merge on sight!
Guess C# doesn't abide by functional standards fully, it works, thanks!