reverted to simple foldl' based fromList for now for 10x speedup in benchmarks. Switched back to left to right behavior for the fold to match Data.Map