Add features to UniquePtr

Make keymaster UniquePtr move construct/assignable
Added implicit move conversion between UniquePtrs with
(non array) types that are implicitly convertible and that are default
deletable.

Also added:
- conversion to bool to UniquePtr<T> and UniquePtr<T[]> and
- Implicite conversion from nullptr to UniquePtr<T> and UniquePtr<T[]>

Test: VtsHalKeymasterV3_0TargetTest
Bug: 67358942
Change-Id: I07943209c34604579da0ca065063dd314ef84e4b
2 files changed