More memory-safe cmonary
More memory-safe cmonary

- Removed the C89-incompatible DEBUG macro for a messier but more
  portable "magic macro expander"
- Eliminated the custom typedefs in favor of the official C exact int
  sizes
- No longer checks for malloc(3) failures
- Favor memcpy over unsafe pointer casts
- Fixed bug where monary_load_size_value would return the "size" of
  UTF-8 or code as one less (it failed to count the NUL character)
- monary_load_{size|length}_value can now handle BSON_TYPE_CODE and
  BSON_TYPE_ARRAY
- Typo: monary_bson_to_arrays:row cannot exceed coldata->num_rows, not
  coldata->num_columns
- Reversed the loops in monary_bson_to_arrays so that it iterates
  through the BSON iterator first and the NumPy arrays second (for new C
  driver)

This compiles with few warnings; however there still may be programmer
errors. The connection scheme code still has to be merged in.

ksuarz/monary,ksuarz/monary,ksuarz/mongo-monary-driver,ksuarz/monary,ksuarz/monary,ksuarz/monary,ksuarz/monary,ksuarz/mongo-monary-driver