HDNode: enforces sane seed lengths and Transaction input

This avoids the problem where a user may accidentally give an invalid seed `Buffer` which could be catastrophically interpreted as a seed of `0`.