Search $PATH for command when creating SystemExec from command line

When creating a SystemExec from a command-line, search $PATH for the
command to execute, so that post-export hooks don't need to specify a full
path.
Post-export hook tweaks

Remove the Soundcloud username & password from the parameter substitutions
passed to the post-export hook: having thought about this now, I can't
actually think of a case where these are of any use at all.

In compensation, add %s and %n parameters that expand to the session
directory and name - maybe people will think of uses for these.
Export dialog: tidy code, & remove some superfluous debug output

Remove some debug output, tidy up a few whitespace inconsistencies, use
DEBUG::Soundcloud in one more place, and zap a couple of unused variables.
Remove unused function

Remove the unused ExportFileNotebook::get_nth_format_name()
Actually pass Soundcloud downloadable flag to export handler
Add #include guards to soundcloud_export_selector.h
Use Ardour 3 credentials for soundcloud upload

I registered 'Ardour 3' as an app with Soundcloud - here are the
client_id and client_secret I got back. Probably the client_secret
shouldn't be here - I'll try to understand what should really happen and
fix this up in due course. Probably we should be using OAuth.

Also remove a couple of bits of dead code and fix a few whitespace
oddities.
Show Soundcloud credentials and upload options only when required

A slightly hacky patch to make the Soundcloud username & password and the
upload options only become visible when at least one export format is
chosen for upload to Soundcloud.

I think that changing ExportDialog::soundcloud_selector to a
boost::shared_ptr is the right thing to do, but I must confess to having
only a hazy understanding of what boost::scoped_ptr was doing in the first
place.

Also it feels a bit wrong to be passing a pointer to ExportDialog's
SoundcloudExportSelector around, but I can't (for the moment, at least)
think of any better way to affect its visibility from inside
ExportFileNotebook.
Prevent creation of session directory with leading or trailing space.
Fix opening of recent sessions with mismatched directory & file names

When populating the list of recent sessions, and there's only one session
file in the session folder, don't assume that the base name of the session
file is the same as the name of the session directory.

Allows loading sessions that were created with trailing spaces in their
names from the recent sessions list, and also helps in the case that the
session file (or directory) was renamed.

There are actually two implementations of the 'recent sessions' chooser:
this applies to both. I suppose a useful project one of these days
would be to unify the two...