avoid wrapped object copying
fix move ctor + housekeeping