Begin refactoring region parameters to types

The purpose of this refactoring is to bring the representation of
region parameters to types into line with the way Java generic type
parameters (and DPJ effect parameters) are represented.  The current
representation of region parameters exists because we didn't
understand how generics worked at the time we implemented this.
Revising representation of region params to types...
Revsing representation of region params to types...
Revising representation of region params to types...
Finish revising representation of region params to types