Abandon North Pole to South Pole support in SphereDomain

Also add macros to turn private and protected member into public when
doing unit testing.