Make load* methods of DifferenceEngine idempotent
These methods returned a boolean indicating whether loading the
data was successful, but then always returned true on subsequent
calls. Fix that.
This changes public methods but there's no usage in Gerrit (some
of them are called but the return value is ignored), no use case
for a caller to care, and the previous behavior has been
undocumented and unreliable, so there is no deprecation period.