Change Memory cosntructor to accept ctypes array objects, remove allocate func and allocate in constructor.
When taking ctypes array, save a ref so it doesn't go out of memory.
optimize tolist a bit, add len func, and finish tobytes.
replace is_proxy with proxy_src which keeps a ref to the original Memory object so it doesn't go out of memory.
Accept bytearray in blit.
Merge pull request #1766 from matham/ctypes-array

graphics-cython-buffer improvments