Split Destroy/Terminate actors. Add problem checking.

I suggest squashing the commits since I know that they are slightly disorganized, and the commit messages don't always describe what's been done. Main changes are obviously:

* Separate responsibilities into Terminate and Destroy actors.
* Create `find_problems` actor method to detect issues before execution.
1. I'm trying to stop with the '...' in the log strings (I'm terrible about this!)
2. Lets be more descriptive here: `Executing a quick run-through looking for obvious problems.`