Use entities
More extensive testbench
Expand buffers to handle larger testbench
Keep hierarchy of imporant modules
Replace faulty logic with a combiner

This fixes the problem with data ending up in wrong places in the bram
Update project files
Simplify the shift_unit