1121102 - support unordered agent replies.

https://bugzilla.redhat.com/show_bug.cgi?id=1121102

The solution:

Required gofer 1.4 which includes an ISO-8601 timestamp (UTC) in RMI reply messages.

Make changes to the task status manager methods to take an optional timestamp.  A timestamp is still created when not passed or an empty string because older agents will not be including timetamps in replies.

Processing by reply type:

- Accepted:
  - state changed to ACCEPTED conditionally when state=WAITING

- Started:
  - start_time set unconditionally.
  - state changed to RUNNING conditionally when state=(WAITING|ACCEPTED)

- Succeeded:
  - state changed to FINISHED unconditionally.
  - finish_time set unconditionally.
  - result set to reply result unconditionally.

- Failed:
  - state changed to ERROR unconditionally.
  - finish_time set unconditionally.
  - traceback set to reply exception info unconditionally.

- Rejected:
  - state changed to ERROR unconditionally.
  - finish_time set unconditionally.

these select queries that are condition on task_id and state are what make this fix so good.