The role of mesh generation, adaptation, and refinement on the computation of flows featuring strong shocks