backend: enable constructing memory handles from buffers and pointers; more rigorously check permissions for cache, and warn on failure; export bandwidth reduction tags