Preparing for separating strategy from code