update append! and hash-set!

update append! according to mappend! as list/cons in GC are mutable.
combine two cases for hash-set! as append! returns list now.