Move long running test case earlier to speed up parallel testing.

This is purely an optimization. Since the test case is long running,
it should occupy a job slot early in the process, so it can chew on it
for a while, while the rest of the tests are running.

Also fix a typo in the path that has been bugging me for ages.
Make sure all relevant variables are inherited by sub invokations.

This fixes parallel test runs in sub projects.
Make sure serial tests are run, even if parallel ones fail.

This moves the serial tests out of the makefile, since make would
refuse to run them if any parallel tests had failed.
Catch errors resulting from miscalculating the number of test results.

This will save us if we make a mistake in testall which leaves out
some test results.
Merge pull request #1970 from kacfengine/testall_fixes

Testall fixes
Correct copy-paste error in README.
Add clarifying comment to endif.
Make variables more local in PurgeOldConnections().
Replace hard-coded number with symbolic expression.

Where PurgeOldConnections() checked the age of a connection, it simply
compared the difference to 7200.  Writing that as 2 * SECONDS_PER_HOUR
makes it clearer what it actually means.
Moved a couple of assignments out of conditionals.

Easier to read this way.
Restructure InitServer to avoid repetition.

Two paths exited the same; the third returned a value.
Reworked as a cascade of if/else-if/else so as to make the exit shared
and put it at the end, where it's more visible.
Don't fcntl(-1, ...) !
Combine an initialization with a declaration.
Purge a pointless clearing of data before free().
More tidy-up in serverd's StartServer.

Moved some declarations to combine with their initializers.
Added an assert that select isn't doomed to a buffer over-run.
Removed a check against an impossible failure (if ConnectionInfoNew()
fails, it exits).
Moved a decl to combine with its initializer.
Carve up AuthenticationDialogue() into smaller functions.

Jimis had already localised the variables enough to make this
straightforward.
Simplify InstallServerAuthPath.
Rename some labels to convey semantics.

The names ret1, ret2 convey little information.  One is thread
clean-up, the other is connection finalisation; so rename them to
reflect that.
More accurate Log() message.

We haven't yet closed the connection, but we are about to.