Properly handle blank MAC addresses

Blank MAC addresses were permitted regardless of the value of
dhcp_enabled. Now they're only permitted if dhcp_enabled is false.
Specify MAC address so object validates
Don't validate MAC until MacAddrField.clean
Remove cruft
Make 00:00:00:00:00:00 an invalid MAC address
Merge remote-tracking branch 'origin/fix-blank-macaddrfield' into unique_constraints
Store empty MAC addresses as NULL