Need principled approach to strictness properties in Data.Map.Strict