Correctly interpret /etc/ssh_config Authentication settings based on openssh /etc/ssh_config system defaults

Builds on https://github.com/net-ssh/net-ssh/pull/141 and adds the following:

Gets test cases working again
Adds support for ChallengeResponseAuthentication/keyboard-interactive
Allows auth methods to be added and removed by config files and ensure there are no duplicates