Improved complex functionality, types for view/dualview, fixes for zero-length dimensions, and spack build support.
- improved complex functionality
- types for view/dualview for ease of use / generic interfaces
- fixes for zero-length dimensions in ndarray
- spack build support / cmake fixes