add support for RCS keyword expansion over pserver protocol
We can simply ask the CVS server to expand keywords for us, instead of forcing binary file mode with the -kb option. The CVS repository contains per-file keyword expansion defaults the server will use. Files checked out by cvsclient.py should now match what a regular CVS client would check out by default.
Add test cases which verify that we create the same snapshot ID for a repository which uses the Id keyword in a file, regardless of whether this repository is accessed via rsync or pserver.
Migrated from D6590 (view on Phabricator)