Refactor constructors of memory space impls to take device instead. It doesn't make sense to create a memory space with no device attached. This is mostly true for non-CPU devices.
Refactor constructors of memory space impls to take device instead. It doesn't make sense to create a memory space with no device attached. This is mostly true for non-CPU devices.
