Add CopyStorageClasses template and allow access to ConstOf and others.

Please see https://github.com/D-Programming-Language/phobos/pull/2562 for context.

This change adds a CopyStorageClasses template based on the existing ModifyTypePreservingSTC template. It also makes MutableOf, InoutOf, etc. public so that they can be used in user code.
So you're suggesting that this first apply Unqual? I'm not sure what existing behavior that would change.