netconf: define rollback contract at internal API

This patch defines the contract Configurator rollback methods must
implement to be compliant:

1. Rollback what they deem necessary by themselves.
2. Return whatever networks and bonds they did not roll back (a diff
   between the current state and the last known runningconfig) as
   a netconfpersistence.Config object. If they rolled back everything
   return None (for non unified persistence configurators) or and
   empty config object.

The configurator context manager will raise a RollbackIncomplete
exception if there are nets and/or bonds remaining to be rolled
back. That will be bubbled up to the API module that will invoke
an inRollback setupNetworks to finish the roll back.

Change-Id: I29c9411ce3f1ede6557c529bb4d984f74ed8f8ad
Signed-off-by: Antoni S. Puimedon <asegurap@redhat.com>
Reviewed-on: http://gerrit.ovirt.org/21702
Reviewed-by: Dan Kenigsberg <danken@redhat.com>