Memory: Added overload of default_memory_type() to switch default memory domain.

Makes it much easier to e.g. only use OpenCL even though CUDA is enabled.
Since this relies on a singleton, the mechanism is not thread-safe.