Allow for two ways to find a flow detail in a job for a conductor

Previously we had the code looking at the first logbook entry and
running with that. That doesn't work so well especially since the
logbook may be unordered. So we then switched to require a job
to provide a 'flow_uuid' key to determine which one to run. This
makes sense and avoids the problem of being unable to determine
which one to run but makes it harder to use for those that have just
logbooks with single entries (likely the common case).

So add in a slightly more advanced finding logic that will check for
existence of 'flow_uuid' and if found use it, otherwise if not found
then check if the logbook is only a single item and if so use that
instead (and otherwise abort).

Change-Id: Id1e11e8b4e48af3389e5c4e0818777ff9abf9463
Merge "Allow for two ways to find a flow detail in a job for a conductor"