pyloxi: keep track of offset/length ourselves in OFReader

For skip_align to work we need to know the offset from the beginning of the
message, not from the beginning of our OFReader (which might have already been
misaligned).
diff --git a/py_gen/tests/generic_util.py b/py_gen/tests/generic_util.py
index da045b9..a3b18c6 100644
--- a/py_gen/tests/generic_util.py
+++ b/py_gen/tests/generic_util.py
@@ -116,5 +116,18 @@
         self.assertEquals(reader.slice(2).read_all(), "fg")
         self.assertEquals(reader.is_empty(), True)
 
+    def test_skip_align(self):
+        reader = OFReader("abcd" + "efgh" + "ijkl" + "mnop" + "qr")
+        reader.skip_align()
+        self.assertEquals(reader.peek('2s')[0], 'ab')
+        self.assertEquals(reader.read('2s')[0], "ab")
+        reader.skip_align()
+        self.assertEquals(reader.peek('2s')[0], 'ij')
+        self.assertEquals(reader.read('2s')[0], 'ij')
+        child = reader.slice(8)
+        self.assertEquals(child.peek('2s')[0], 'kl')
+        child.skip_align()
+        self.assertEquals(child.peek('2s')[0], 'qr')
+
 if __name__ == '__main__':
     unittest.main()