hkdf
Refactor HKDF support and provide vectors for tests.
This got split into SHA1 and SHA256
Break up hkdf_derive into hkdf_extract and hkdf_expand.

Testing each individually against all the vectors and actually
asserting about the intermediate state.

hkdf_derive is now just a helper function which copes with the
default arguments.
Fix pep8.
Fix case.
Use the nist vector loader.
Closer to proposed interface in #513.
Remove load_hkdf_vectors which snuck in with a rebase.
Add test cases for length checking and already finalized.
Expand, extract, verify.
Remove more leftovers from rebase.
Actually register the interface.
bytes all the things.
Aggressively type-check for text.
Consistently use double quotes.
Use six.u for great good.
Complete test coverage
Remove redundant type checks per @alex and @reaperhulk.
HKDF docs