Base wrapper for an immutable device resource. Bundles necessary data that may not be easily retrieved on without an RHI, such as size on device. If the underlying device resource must change, this resource wrapper must be recreated.