cursor.extent.begin_int_data isn't always right.

We now use `cursor.extent.start.offset` and `cursor.extent.end.offset`,
which seem to be returning the correct values! Not sure, why I wasn't
using them before!

Fixes #5.