major refactoring, moved from ID to full HREFs to better suit potential instance redirects, slightly improved test coverage.