Clean up unimplemented methods in the powervm driver

There were several methods overridden from the base virt driver class in
the powervm driver but all they did was pass which can cause problems
with tempest, e.g. the tempest test for pausing an instance will timeout
waiting for the instance state to change. This change raises
NotImplementedError rather than passes so that tempest will fail out
quickly when testing something that the powervm driver does not
implement.

Also removes the overridden manage_image_cache method since it didn't do
anything, which is exactly what the base class does.

Added unit tests to make sure that methods which should simply pass do
and that tests which should raise NotImplementedError do that also.

Fixes bug 1205066

Change-Id: Ieaf256a5c0f54804686318d6cbd5877a5003c9eb
Merge "Clean up unimplemented methods in the powervm driver"