Clean up and add tests to the Recreate strategy

Simplify the logic for the Recreate strategy and add unit tests.