Add c_ssize_t to ctypes module if not already present
Some big-endian fixes (ppc)

Now the base, bufferproxy, and pixelcopy module unit tests pass.
Big-endian fixes for pygame.Surface

The surface_test.py unit tests now pass on a PowerPC.
Big-endian fixes to pygame.PixelArray

The pixelarray_test.py unit tests now pass on a PowerPC
Fix bug introduced into little-endian code in changeset b51cd33153a7
Redo changeset b6e948d2e8e3

Somehow changeset b6e948d2e8e3 was undone by changeset b51cd33153a7. This
restores the signed return value of method Surface.get_at_mapped().
Fix bug in PyPixelArray tp_new function where weakrefs C field is clobbered

The _pxarray_new_internal function overwrote the weakrefs field after it
was set by a PySurface_LockLifetime call.
Another bug fix towards issue #175

This adds another missing `Py_DECREF()` for a returned PyNumber_Index object.
In chasing down the lockobj PyPixelArray struct field was removed, with
the `PixelArray` instance directly calling `PySurface_LockBy()` and
`PySurface_UnlockBy()`. The lifetime lock object was redundant and considered a
possible candidate for the leak. Also, the `PyObject_ClearWeakRefs()` call in
`_pxarray_dealloc()` was moved to the to of the slot function, as per the
[Python 3.3 weak reference support documentation](http://docs.python.org/3.3/extending/newtypes.html#weak-reference-support).
merge in Mac specific fixes
Address issue #177 (untested)

In pygame.sysfont, this handles the OS X case where /usr/X11/bin/ft-list is
missing, leading to the unintended Python exception:

UnboundLocalError: local variable 'fonts' referenced before assignment