Use CAF_PDM_LOG_ERROR and qFatal to notify the developer with an actionable
message when a command feature ID is not registered in the factory. This
replaces the silent CAF_ASSERT and makes it clear that the feature may have
been deleted without removing all references in appendMenuItems().
Move Add and Delete command features there.
Implement generic Toggle Commands.
Make library an cmake "OBJECT" library to allow "registering by static initialization".
Add the concept of CurrentContextMenuTargetWidget into CmdFeatureManager to support the toggle commands.
Updated test application to use the new commands