Problem
Since legacy shred were removed, enums ShredCode and ShredData have only a single variant. This is making API more convoluted than it needs to be.
Proposed Solution
Remove the indirections and inline merkle::ShredData and merkle::ShredCode as appropriate into enum Shred
This probably can be done separately for Data and Code shreds, this will help keep PRs smaller.