ActionFinish called after Action completion

The worker now calls ActionFinish on state to call home with the results of an Action.

The unit will not be set to an error state unless the API call to ActionFinish fails.  Any other errors generated by the Action will be encapsulated in the results message, which is sent back to state with the final state of the Action (complete or fail.)
Reduced complexity by handling preemptive Action failures outside of RunAction / RunHook.