Fix buggy auto-purge comment routines

- Removed `edit_comment` and `delete_comment` action hooks from
`auto_purge_comment_post_cache()`; these are now handled by the new
`transition_comment_status` hook that is attached to the new
`auto_purge_comment_transition()` routine.

- Added a new `auto_purge_comment_transition()` routine; this new
routine properly handles the transition from one comment status to
another and only calls the purge routine when necessary.

- A new `static::$static['allow_purging']` variable tracks when a
comment status change should _not_ trigger a clear of the post cache
and ensures that a subsequent call to `auto_purge_post_cache()` does
not cause the post cache to be cleared. This is necessary because, for
example, a spam comment will eventually trigger the `clear_post_cache`
hook, which attaches directly to `auto_purge_post_cache()` and would
result in the post cache being cleared even when the comment cache
does not get cleared.

See websharks/quick-cache#159

---

@jaswsinc Code review please, when you get a chance?