The newer Ethernet shields include the mac address. I assume (probably bad) that address is flashed in the shield. Just curious why it's necessary to include the mac address in the begin command with these newer shields. Is it just that the library hasn't caught up to the latest HW?
If you have multiple devices running the same code, it would be "nice" if you didn't have to rebuild the code for each device just to change the mac address in the begin command.