Retry on Conflict exceptions from Ironic

Retried is everything, except get and list calls and port creation
(for which Conflict is an expected exception).

Unit tests are added for the most critical cases.

Change-Id: I92675c3d72a2f598c4e0d1ae8b0a4a4aa0a2ed12
Closes-Bug: #1401222