fixup: Moved Job_type-agnostic JobWait code to a .cc file
It is possible to make most JobWait users template-free. I have done
that and reverted those changes because they:
* Decrease code readability: The wait member declaration no longer makes
it clear what job kind that wait member is waiting for/dedicated to.
* Decrease JobWait safety (a user may give the wrong job to the
wait.start() call)
* Require strange/ugly tricks to make sure that users of the templated
version do not call the non-templated start() which does not set the
type-aware JobWaitAndCommunicate job_ member.
A couple of other, very minor JobWait polishing touches.