Check default files for public keys if not set up in ~/.ssh/config.

Basically, if `~/.ssh/config` does not have an `IdentityFile` field, it will check `~/.ssh/id_rsa` and `~/.ssh/id_dsa`. At the moment, it was simply failing with "Could not initialize update site".

I took the parsing of the config file out into a separate method because it seems, according to ssh_config(5), that there's a lot more ways to specify where the identity files could be and it seemed that this would keep it cleaner in the future.

For future note, it appears that it might make more sense to collect an array of available identity files, which would be tried later on:

> It is possible to have multiple identity files specified in configuration files; all
> these identities will be tried in sequence.  Multiple IdentityFile directives will add to
> the list of identities tried (this behaviour differs from that of other configuration
> directives).
This is now wrong because we need to look for `id_rsa` and `id_dsa` even if no config file exists. Better to replace it with something like:

```java
if (config.exists()) try {
        final BufferedReader reader = ...
```