move unique_ptr<U,E> to unique_ptr<T,D> had conversion checks in wrong
order
added overload resolution checks for operator=(unique_ptr<U,E>&&)
use return type SFINAE to prevent overload resolution assignment for
unique_ptr<U, E>