Selecting Dummy or Memory Card would pass wrong values to EXI::ChangeDevice and not work as expected
Changing path had no effect until device was changed as it didn't call EXI::ChangeDevice at all
Also turns a std::string const reference into a value instance.
While this is well-defined, it does look out of place, given a new string
is being created.