Refactor strategies

Sorry, this isn't a particularly atomic commit. Changes in no particular
order:

- Tabs to spaces and remove some trailing whitespace.
- Inline if/else statements.
- In `stubborn`, the use of `while` didn't really make sense, as it
  wasn't ever actually iterating; it either returned immediately or
  moved onto the else branch. I just moved the condition up to the
  containing `if` and or'd it.