Updated haas.model.Switch to match the newapi spec.

the num_ports field specified in `apidesc.md` presumably should be
stored somewhere.
model.Switch: changed the model field to driver

This is less confusing; there's a name class between the model of a
device and a database model.
Implemented switch_*.

Should look at writing some tests, and probably using the helper function
`_must_find` on @jlbernard's fork.