Add Cartesian coordinates in SphereCoord class

Also modified the indexing for grid coordinates and field data to
provide a unified way to access them, so application will not affected
by the changes of underlying configurations.
Add the setting gridType in StructuredField in some create methods
Add the calculation of cell volumes
Change PS coordinate for convenient access