Read a geometry from the ByteBuffer. The buffer's position, byteOrder,
and limit are set to that which is needed. The record has been read as
well as the shape type integer. The handler need not worry about reading
unused information as the ShapefileReader will correctly adjust the
buffer position after this call.