varLib.merger: when flattening singlepos, copy valuerecords

to avoid modifying original master fonts' SinglePos tables

https://github.com/fonttools/fonttools/pull/1641/files#r293302141
diff --git a/Lib/fontTools/varLib/merger.py b/Lib/fontTools/varLib/merger.py
index d77f5c7..7c3c6cf 100644
--- a/Lib/fontTools/varLib/merger.py
+++ b/Lib/fontTools/varLib/merger.py
@@ -730,7 +730,6 @@
 	return lst
 
 def _Lookup_SinglePos_subtables_flatten(lst, font, min_inclusive_rec_format):
-	lst = list(lst)
 	glyphs, _ = _merge_GlyphOrders(font,
 		[v.Coverage.glyphs for v in lst], None)
 	num_glyphs = len(glyphs)
@@ -746,12 +745,12 @@
 			val_rec = singlePos.Value
 			for gname in singlePos.Coverage.glyphs:
 				i = glyphs.index(gname)
-				new.Value[i] = val_rec
+				new.Value[i] = copy.deepcopy(val_rec)
 		elif singlePos.Format == 2:
 			for j, gname in enumerate(singlePos.Coverage.glyphs):
 				val_rec = singlePos.Value[j]
 				i = glyphs.index(gname)
-				new.Value[i] = val_rec
+				new.Value[i] = copy.deepcopy(val_rec)
 	return [new]
 
 @AligningMerger.merger(ot.Lookup)