Other than transfer and size, we could simplify all effects by having the common `done()` function remove the placeholder (if it exists), and do the final hide based on the mode. There are a few effects which use `if ( !show )` instead of `if ( hide )` to determine if `.hide()` should be called, but those can probably all be normalized since this would only affect people explicitly passing a mode of `effect` when they really mean `hide`, which probably isn't happening.

We'd need to have `.createPlaceholder()` store a reference to the placeholder to make this work, but that's simple.