Split PurpleRequestFields into its own files
As before, this uses `hg cp`, so it _looks_ like a bunch of deletion.
Again, there's a bit of private API for the cross-struct access, which should go away later.
I also named the file as it will be eventually, even though the class name hasn't been changed.
I did not do any other API changes to make this a simpler review.
Testing Done:
Compiled, and opened Request Fields from Demo.
Reviewed at https://reviews.imfreedom.org/r/2317/