Add some extra parameters to Var objects to handle in-place reshaping and axis substitutions.

Note: these parameters are not yet used anywhere.
Add methods to make copies of Var and Axis objects.

Will be useful when we start allowing in-place changes to Var objects, instead
of creating a heavyweight wrapper object.