Fix error checks for key chain lookups
Add SOCKS proxy support

This is for updating bundles and itself plus posting crash reports.

It now also ignores unknown proxy types.
Failing to set/remove extended attributes is no longer an error

Workaround for osxfuse/osxfuse#85 (and possibly other file systems).
Log malformed UUID incase of error

This is instead of showing “no valid UUID” (which could mean either missing or malformed).
If deleting old version fails then move it to trash

We also add a time suffix to the old version so that if we fail to remove it, the user will not get (another) error when retrying the update.

Presumably fixes #991.
Fix executing bundle items via UI for non-main window

This affected executing bundle items via the Bundles menu (including the Select Bundle Item… dialog) in the text view used in the bundle editor.
Fix issue with requirements that had no locations array

The variable provided was ignored meaning that it would only work correctly if the executable was found via PATH, and if it wasn’t found, the error message would display a bogus character as the variable that the user should set.
The bundle’s info.plist can now specify requiredCommands

This will apply to all items in the bundle so it’s questionable if it’s something we want to use, as it would not allow the user to run a “Help” command from the bundle without first setting up the requirements. OTOH setting requiredCommands for all but a few items in e.g. the Git bundle seems redundant — perhaps items should be able to eclipse keys from the bundle’s info.plist to effectively unset the requiredCommands for a select few items.