hdl/dev_io/dev_io_core.c: change to sematic sizeof

Using the derefenrced pointer in a sizeof is more
generic and avoids a mismatch problem if we change
the type of the pointer
hal/dev_io/dev_io_*: add new interrupt error
hal/dev_io/dev_io_core.*: add new poll methods

There are 2 new methods for doing the polling on
dev_io sockets. They are named devio_poll2_all_sm ()
and devio_init_poller2_sm () to differentiate from
the old methods and it performs a balanced polling.
For now, both of them are going to coexist. In the
future the old methods might be removed.
hal/dev_io/dev_io.c: use new poll API

The new poll API have the advantage that it is
balanced. So, even if one socket gets more mesages
(requests) than the other, they both get served in a
fair round robin algorithm.

This commit together with 3759861f fixes issue #13.