Pruner refactor and optimisation.

- We now *only* search directories that can contain files we might
  prune. This is *much* faster, and means we don't go causing issues in
  the ATM cache or elsewhere.
- Files and directories to work with are pre-calculated, paving the way
  for a proper test suite, and giving the user feedback on how much work
  will be performed.
- Better protection against variable leaks.
- Moar documentation.
- Passes `perlcritic --harsh`.
- FASA_Tanks: Removed duplicate rule