Factor out IvyTestCase to handle prepared test repositories and per test
case directory and Ivy cache.