This change adds optimistic locking to all the actions that need to update
data on GitHub. It does this using the standard `CreateFile` invocation with
the previous SHA (almost like it was designed for this 😇) and retrying with an
exponential backoff.
Signed-off-by: Ben Hale <bhale@vmware.com>