format.c: Add aprintf
 - printf with the formatting features
lib.c use aprintf for debug messages.
Add lib.h to pre-includes of syme.h (the getField macros expand into a libfunction)
Add 'showexports'.  Handy for displaying the exports of a type.

NB: Very simple and uncomplicated.  Could easily be improved.
tests/abquick.c: Use testIsNull, not testIsNull.. the latter isn't a test predicate.
debug logging: Use afprintf more often in syme.c and sefo.c

afprintf and aprintf are much nicer than fprintf.  This is yet another
commit converting them.  Also symeEqual now logs with nicely balanced
brackets (I prefer this to "->/<-" lines, as it becomes easy to navigate
through output).
lib.c: Library symes don't really need constLib values.. they form a global
namespace.  So, only set constLib if it's not a library.
of_inlin.c: inlInlineBody: Use the called function's type declarations
to get the type of any additional variables; it _really_ should match
inlExprType(), but also covers the case of (Cast Rec ....), where there is
no format information.
tform.c: tfSyntaxConditions should allow the incoming type to be any multi.

The intent of the function is to recurse down and decorate any type forms
with the current conditions, so it will hit all kinds of type forms
- presumably depending on the tfSyntax pass.
abquick.h: remove uniqueType declaration - it's not defined anywhere.
tfsat.c: Keep hold of embedding information when short-circuiting tfSat.

Previously, it simply returned tfSatTrue if the tfSat check succeeded.
which would mean that a call to tfSatArg would not have the right embedding
information, which would then cause genfoam to whinge (and generate
incorrect code).  So, return the embedding, and it all becomes good.

Added test cases too.
gf_add: Fix allowed syntax forms to include AB_Except.
Keep test domains out of the library (for the moment).  Also remove stray
definition
Build tests separately