fix XElement copy, added unit tests & vsproject