Conditional code:

  HAVE_64BIT
  HAVE_LONG_DOUBLE

Audit all functions that used format strings (some may need array variants
for argument passing to actually be of any use).

Circular dependencies in the original C source have been papered over.
Usually, an access type to an unavailable type has been replaced with
an agar.core.types.void_ptr_t. These are marked with XXX in the source.
Correct fix is to move all of these records into a single, private
package of types, import them into each package and use subtype to
keep the namespace as it was.
