Locking (#37).
Make tests concurrency-safe and name jobs/printers after tests.

Also use the correct job name when running job processes.
tests: wait until job completion before checking output.
The side-channel sockets were muddled up.
Report dup2()/close() errors when setting up child process.
Don't run PdJob D-Bus method invocations in their own thread.

Doing so causes issues with the filter chain file descriptors.
Conditional code for older glib versions.