Refactor endpoint/responses and add rspec coverage

I extracted the AutoDiscovery endpoint configuration/client and response parsers to their own models and added test coverage.

This should supercede #6