Don't rely on other headers files for definitions.

Source files should always include headers for their contents, and not
assume another header being used defines it for them. The only exception
being it's own header file.

Header files should only include/forward declare things being used in
the header file, that way it's accompanying source implementation can be
changed without changing header.

Add all.h so that including sphia.h doesn't include every file when we
typically only need sphia_t.
Fix commander warning about comparing unsigned vs signed.