Use C++11
Fix no memory error in hwaddr

The new object hwaddr, used to store the HW address as an integer,
was being kept on the heap by the device object. But the device object
is duplicated when it's added into a vector, and lacks a copy constructor.

This was making lapdog crash.

Now it will not use new for the object.