added missing return statement
added copy-constructor and copy-assignment