Hash#replace should copy default as well; close #2004