Various bug fixes, and work on the OSX app today: * Avoid crashing when ssh-keygen fails due to not being able to parse `authorized_keys`.. seems a lot of people have crufty unparsable `authorized_keys` files. * On OSX, for some reason the webapp was failing to start sometimes due to bind failing with EINVAL. I don't understand why, as that should only happen if the socket is already bound, which it should not as it's just been created. I was able to work around this by retrying with a new socket when bind fails. * When setting up `authorized_keys` to let `git-annex-shell` be run, it had been inserting a perl oneliner into it. I changed that to instead call a `~/.ssh/git-annex-shell` wrapper script that it sets up. The benefits are it no longer needs perl, and it's less ugly, and the standalone OSX app can modify the wrapper script to point to wherever it's installed today (people like to move these things around I guess). * Made the standalone OSX app set up autostarting when it's first run. * Spent rather a long time collecting the licenses of all the software that will be bundled with the standalone OSX app. Ended up with a file containing 3954 lines of legalese. Happily, all the software appears redistributable, and free software; even the couple of OSX system libraries we're bundling are licensed under the APSL.