Split read/write bit function arguments in word number and bit number

That means that callers don't have to do the calculation (i.e. word num
* 8 + bit num) any more.
Note that word and byte number are exactly the same thing.
Ensure that the connection struct pointer is passed correctly

Declare the connection struct pointer to be a ctypes.c_void_p so ctypes
doesn't end up truncating it to 32 bits.
That caused crashed on 64 bits machines.