Specialize axes for structured matrices (#52480)
On master
```julia
julia> S = SMatrix{4,4}(1:16);
julia> A = StructArray{Complex{Int}}((S,S));
julia> axes(Symmetric(A))
(Base.OneTo(4), Base.OneTo(4))
```
The static axes are lost. After this,
```julia
julia> axes(Symmetric(A))
(SOneTo(4), SOneTo(4))
```
Similarly, I've added methods for other structured matrix types. These
help with other cases like infinite arrays.
---------
Co-authored-by: Matt Bauman <mbauman@juliahub.com>