TRQ-2845: Fixed tmp_time math in mom_main main loop

Fixed tmp_time math
Moved the logic to a function
Wrote a unit test
TRQ-2411: print the header only once

- added global variable print_header for indication "need print header"
TRQ-2411: error info prints on bottom of output

Conflicts:

	src/cmds/qstat.c
TRQ-2411: remove unused comments
TRQ-2411: add unit test for checking get_err_msg; change format of err string

- fix in get_err_msg(): change convertion from int to string
- add unit test
TRQ-2814: changed job_exclusive_onuse to job_exclusive_on_use.
Merge pull request #251 from DSRCompany/TRQ-2845_wrong_time_now_math

TRQ-2845: Fixed tmp_time math in mom_main main loop
TRQ-2761: prevent resetting last status sent timestamp to 0

If torque MOM needs to force status update message sending in some cases
(if if pass not more than 1/3 of configured interval) it moves the last
status sent timestamp so the next status update will be sent after 1/3
of the interval. In other cases (if it passed more than 1/3 of the
interval) mom resets the last status update timestamp to 0 that makes
impossible to determine the actual last message sent time.

Updated the forcing function algorithm to never reset the timestamp to
0. Now it just moves the last timestamp like it's time to send the
update (time_now - update_interval).
TRQ-2761: minor build fixes
TRQ-2761: Unit test
TRQ-2761: Minor: update a comment