Fix `unstd.array.rawCopyCTImpl`

Use `hasElaborateAssign` instead of `hasElaborateCopyConstructor`.
Improve `unstd.array.rawCopyCTImpl`

Do not give up if a static array is unassignable because of element const fields.
Also add unittest.

Note: unittest passes without implementation fix because of Issue 9290.
Fix `unstd.lifetime.destruct`

Fix typo in `setToInitialState` function call and add unittests.
Add `unstd.lifetime.move`

This is a fixed and improved analog of `std.algorithm.move`.
Incorporate performance optimization suggested by Dmitry Olshansky