fixed self assignment error and provide move semantics to pushBack of Vector<T>