Implement instance rebuild in nova.virt.driver

This implementation of the rebuild operation allows the use of
the --preserve-ephemeral option. The default implementation in
Nova does not support this option.

Note: Image validation is not handled with this change.

Change-Id: I933658d139dc16ef1a65378b0084b4baf6180651
Closes-Bug: #1307754
Merge "Implement instance rebuild in nova.virt.driver"