layers: Update unique_objects to make use of safe_structs

Stop overwriting const* data in unique_objects.
Instead, declare local safe_struct copies of data, update that
data in place with unwrapped objects, and pass down the local
safe_struct copy, which spoofs the original struct layout.

This includes code to build the layer using vk_safe_struct.h/cpp files.
4 files changed