pass headers through to http backend
link spec should pass in string keys for link state
fix incorrect nesting in client spec
slight modification to Link#href
introduce #traverse, refactor #follow to make it simpler for now