Edit > Fade... : get it working again, also improve it greatly

Another dreaded task on 6.4's final checklist is now complete.  This
function previously lived in the Effects menu as "Fade last effect".
Per PhotoShop convention, and to better reflect the fact that it works
for more than just effects (e.g. adjustments work too!), I have changed
its position in PD's menu as well, so you can now find it as the 4th
entry in the Edit menu, with the more general "Fade..." moniker.

The new Undo/Redo engine has not only made this feature way more
reliable - it's also made it significantly better than Photoshop's
equivalent.  In Photoshop, if you so much as touch the Save button after
applying an action, the Fade option is gone for good.  Same goes for
applying any number of other tasks.  Similarly, using Undo to return to
some previous point in time will not re-activate the Fade option for the
relevant task at that point in the Undo stack (to my knowledge).

In PD, "Fade..." is much more intelligent.

1) After applying a fadeable action, you can change layers, apply
non-destructive fixes, move layers around, etc, and the Undo engine is
smart enough to filter those out and still preserve the option to Fade
the last *destructive* action you made.

2) Similarly, if you Undo to some previous point in time, you can always
Fade the last relevant action for that point in time.

Quite nice, no?

The heart of this functionality is the new "fillDIBWithLastUndoCopy" in
the pdUndo class.  Myriad comments explain how the function works, and
what it can do.

Note that as part of this change, Fade will now show the associated
action in the menu caption, e.g. "Fade Blur..."

The "..." in the menu name implies that a dialog will be launched.  I
haven't written the dialog yet, but it is coming.  Besides letting the
user control fade strength, it will also allow them to change the blend
mode of the previous action.

This commit is quite large because many menu items were rearranged to
accommodate the new menu order, which means accelerators, menu icons,
and menu enable/disable code also had to be reworked for many entries.
I hope everything has been properly fixed.

Finally, this commit includes some unrelated optimizations to the
central syncInterfaceToCurrentImage function.  Menu icon refreshes are
now handled more intelligently, to avoid any more refreshes than are
absolutely necessary after changing menu captions.