Groveler: code cleanup
Groveler: add proper OUTPUT-FILES and INPUT-FILES methods

Fixes the bug that modifying a grovel-file or a wrapper-file caused
the auto-generated lisp file to just get recompiled without being
re-generated.
cffi-manual: fix bitrot related to foreign libraries
Port release script to Lisp
cffi-abcl: minor stylistic tweaks and whitespace cleanup
cffi-abcl: try first to load the 64bit version of libffi under Solaris
cffi-abcl: promote :BYTE :SHORT and :WCHAR_T types in callbacks to :INT

Fixes tests for CALLBACKS.CHAR, CALLBACKS.UNSIGNED-CHAR,
CALLBACKS.SHORT, CALLBACKS.UNSIGNED-SHORT.
Fix dependencies of process-op work for asdf3 and poiu.
manual: fix typo in the defctype node
Move all exportations to defpackage form for consistency

(And to appease SBCL.)
Convert libffi-unix.lisp to plain ASCII
manual: use Georgia rather than Century Schoolbook as main font
scripts/release: better new-version-number-candidates implementation
For Allegro CL >= 8.1, the heap will be released during foreign function calls
Extend with-foreign-slots to optionally return slot pointers

Extend with-foreign-slots so that if the var (slot) is specified as
(:pointer name) it will return the slot pointer instead of the
value. Based on a suggested macro of Chris Bagley, but there is no
need to make a new macro, as the new with-foreign-slots is backward
compatible with the old.
Update manual entry for extended with-foreign-slots
Remove superfluous cffi:, cffi:: prefix

Remove superfluous cffi:, cffi:: prefix. It is a remnant of the
long-gone days when the libffi code was in a separate package; since
it was put in the cffi package, the package prefix is not necessary.
Foreign functions with both string and structure-by-value calls

Add expand-to-foreign-dyn-indirect method for foreign-string-type that
does not require a convert-into-foreign-memory method. Add test FSBV.7
to call a function with a string and a structure-by-value
argument. Previously, calling such functions would trigger an error
about the missing convert-into-foreign-memory method.
Indirect string one level for libffi

Every argument to libffi is dereferenced before being passed to the
function, including pointers. For strings to be correctly passed, an
additional level of indirection is needed. This fixes the need to use
the "address of" operator `&' in the C function for strings passed to
foreign functions that also take structures by value.
Merge remote-tracking branch 'upstream/master'