add unary move operator to make owned pointer ownership transfer more explicit
fix moved and used in same expression error