Add tests for a witness flag of 0x02, a witness element longer than the remaining data, truncated fields, and truncated CompactSize prefixes. Also check that DecodeHexTx does not fall back to reading these as a different non-witness transaction.
These were discovered by finding gaps in an alternate implementation (bitcoin-s)