Improve error handling for defaultDpid()
I think it's worth considering how we want to specify dpids for
switches. One way would be to have Mininet (optionally) pick them
automatically. Another way, which I have currently implemented, is
to intuit them from the name, for example s1 -> 1. The latter is
slightly inefficient, but is convenient because it ensures that
there is a logical mapping between switch names and dpids, which
is very helpful for debugging an OpenFlow system!
Probably we should just clarify that the easiest way to set a dpid
is to include it in the switch name, but you can also pass it in
as a custom parameter to the constructor.