Change PyBuffer to Py_buffer to be consistent with other non-object structures like Py_complex.  Add some more functionality to the memoryview object.
diff --git a/Include/object.h b/Include/object.h
index d03c888..88a3b84 100644
--- a/Include/object.h
+++ b/Include/object.h
@@ -153,10 +153,10 @@
         Py_ssize_t *strides;
         Py_ssize_t *suboffsets;
         void *internal;
-} PyBuffer;
+} Py_buffer;
 
-typedef int (*getbufferproc)(PyObject *, PyBuffer *, int);
-typedef void (*releasebufferproc)(PyObject *, PyBuffer *);
+typedef int (*getbufferproc)(PyObject *, Py_buffer *, int);
+typedef void (*releasebufferproc)(PyObject *, Py_buffer *);
 
         /* Flags for getting buffers */
 #define PyBUF_SIMPLE 0