better handling of default construction, copy and assignment