I really dig this approach to refactoring the snapshot setup code. You are a refactoring ninja.