made copy() methods consistent
simpler idList, combined args that say whether to treat elements as references or not