Random access & position tracking

I've added the following methods:
<table>
<tr><td>#seek(n)           <td>Move to (and read) the nth OSMData block in the file
<tr><td>#size                <td>Return the number of OSMData blocks in the file
<tr><td>#pos                 <td>Return the index of the current OSMData block in the file (0 = first block, 1 = second block, etc.)
<tr><td>#pos= n            <td>Synonym for #seek(n)
<tr><td>#blobs              <td>Return debugging information about the OSMData blobs (CAUTION: currently returns a mutable internal data structure)
</table>

The most notable C functions are:
<table>
<tr><td>seek_to_osm_data()                                   <td>The implementation of #seek and #pos=.
<tr><td>find_all_blobs()                                           <td>Called from initialize. Does a quick scan through the whole file finding the data blobs, and building up the @blobs array (which is used internally to implement #seek and #size).
</table>