Use MountGuest to mount cryptohome for a demo user.
Doing a regular user mount with the ephemeral flag doesn't work very well since cryptohome expects the machine to either have an owner or be enterprise owned for normal user mounts, even if ephemeral. This CL switches us to using the mount guest path in cryptohome.
This involves changing the path followed by LoginUtils::PrepareProfile since there are multiple things that it does that we either do not want, or cannot have, for a guest mount.

Additionally, we cannot MountGuest with our normal demo mode user_id since Cryptohome (and a few other cros components) expect the username for a guest mount to be $guest. To get around this, we mount crytohome with $guest as the username, but once the mount is done, we switch the username back to the demo user name for the rest of the processsing being done in Chrome.

R=dpolukhin@chromium.org, xiyuan@chromium.org
BUG=345038
TEST=Tested on a device on OOBE with the TPM cleared.

Review URL: https://codereview.chromium.org/171423009

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252193 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 252193