Abstract sftp and http repository transport tests to unify coverage

I continued with improving tests for repository transports and unified basic resolution integration tests for sftp and http by introducing some abstractions (`RepositoryServer`, `RemoteIvyRepository`, `RemoteIvyModule`, `RemoteResource`). Please let me know if this is the right direction.

@adammurdoch @bmuschko I can see that you have been changing code in that area a lot recently making it a bit of a moving target for me to provide a mergeable PR with this stuff. I think it would be a good idea to have a look at this PR sooner rather than later to avoid master diverging from it again.