don't include delay.h for DUE

The DUE doesn't have util/delay.h within it's hardware specific API,
commenting this header file out caused no issues, and I wonder if it is
needed at all.
Define TWBR if using a DUE

I have been unable to find any reference to the TWBR within the (DUE)
hardware specific API, so just create the variable and give it a
default value.
Change the type of variable used to hold the port and mask depnding on arch type

the DUE hardware specific API portOutputRegister returns volatile RwReg
* (instead of volatile unit8_t *) also digitalPinToBitMask returns
uint32_t (instead of uint8_t)
_BV isn't defined for the DUE

_BV doesn't seem to be defined for the DUE, BV is just a bit shift, so
I copied the macro directly into the header from the original source.