Clean up empty directories after install and on errors
BUG=327880

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@241142 0039d316-1c4b-4281-b951-d872f2087c98
Convert Extension* to extension id in AppLaunchParams.

Having raw Extension pointers is problematic because an extension may be
reloaded during the lifetime of AppLaunchParams, which will invalidate the
pointer.

This also converts CommandLine* to CommandLine and lets the empty command
line represent "no command line".

BUG=323220

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

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