Make core ID width be dependent on the number of cores
Fix livelock with synchronized load: was using signal from wrong stage
Cleanup: Rearrange port list