Fix job state recovery logic for accounting frequency

Fix job state recovery logic in which a job's accounting frequency was
not set. This would result in a value of 65534 seconds being used (the
equivalent of NO_VAL in uint16_t), which could result in the job being
requeued or aborted.
Do not drain a node if a job's accounting frequency is bad

Only cancel the job.
Validate a job's accounting frequency at submission time

This avoids waiting for the job's initiation to fail.