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
Re-add hint to disable DHCP
Allow empty MAC addresses when DHCP is disabled

Also fix an error message bug
Force Django to always clean the 'mac' field
Make 'always_validate' attribute optional

(It was always supposed to be optional, but I messed up the first time.)
Merge pull request #634 from drkitty/fix-blank-macaddrfield

Properly handle blank MAC addresses