add copy constructors (incomplete) and content assignement