[Requirement #10439] - The system shall generate audit logs recording all viewing and modification of patient data

Apparently these weren't tested as well as I thought.  Corrected a number of issues:
 * Modified AuditAdvice so that the PreCommit callback is called *after* the change-set is captured.  This allows the IServiceOperationRecorder implementation to make use of the change-set in the PreCommit handler.
 * Modified RisServiceOperationRecorderBase so that the change-set data is serialized during the PreCommit handler while the persistence context is still available.  This prevents the possibility of lazy initialization exceptions from NHibernate, which is what was preventing successful auditing when a patient Note was added.
 * Included Patient entity change-set in the patient profile update recorder, so that changes to Notes and Attachments are logged.
 * Fixed issues with the ReplaceOrder and MergeOrder auditing.
 * Improved the text of some of the order cancellation reasons, while I was at it.
[Requirement #10570] - Missing healthcard alert makes no sense outside of Canada

Added a new boolean setting to the AlertsSettings group called MissingHealthcardInfoTriggersIncompleteDemographicDataAlert, which is set to False by default.  This means that Canadian customers will have to explicitly enable it if they want to see it.
[Requirement #10227] - Remove resident workflow

The "Return to Interpreter" tool is now hidden if the resident workflow is disabled.
[Requirement #10258] - The workstation shall include a Simple Order Entry screen, launched from calendar view

Improved the title bar of the dialog when editing or replacing an order, so that it actually includes the A# of the order being edited.

Note: the exception to this is when the editor is launched from the calendar view, in which case it just says "Modify Procedure(s)", because the information required for the title bar isn't available.  This would be a bit more work to fix, and we don't have time.
[Requirement #10210] - Remove protocolling
[Requirement #10211] - Remove Preliminary Diagnosis
[Requirement #10222] - Remove booking

In order not to have these categories appear in the Worklist editor, needed to move all of these worklist classes into a separate plugin.
 * created new plugins Healthcare.Extended.*, and moved all worklist classes from these categories into the new plugins.
[Requirement #10227] - Remove resident workflow
[Requirement #10212] - Remove transcription supervision workflow

Added some code to manually hide certain worklist classes based on the workflow enablement settings.
[Requirement #10210] - Remove protocolling
[Requirement #10211] - Remove Preliminary Diagnosis
[Requirement #10222] - Remove booking

Forgot to move a bunch of string resources from Healthcare to Healthcare.Extended in previous commits (there were no hardcoded references to the resources so it wasn't obvious they needed to be moved).
[Requirement #10416] - The RIS will be integrated into the Team Edition workstation

- update Tabstop for ProcedureEditor, Scheduling configuration and Advance Search component
[Bug #10283] - User is unable to entirely remove the toolbar and window menu to reduce extraneous light
- ToolBase holds a reference to the created Actions, but inheritors have no way to override how the actions are created; it's forced to be via action attributes on the tool. Added CreateActions virtual method that can be overridden.
- CustomizeViewerActionModelTool now overrides CreateActions. There is now a "Customize" action on the viewer context menu that is NOT available by default. If the user hides the one in the main menu, the one in the context menu will be available, regardless of the users customization settings. This means the user cannot hide "Customize" entirely.
- We now watch the main menu and toolbar's Layout event (DesktopForm) and set the visible property based on whether any top level items are showing.
- Removed the validaton policy in the CustomizeViewerActionModelsComponent that disallowed Tools/Customize and Tools/Preferences from being removed from the menus. Tools/Preferences can now be hidden, but the user can always get to it by switching to a non-viewer workspace.
- Made some testing tools (SUV, MPR) unavailable by default.
- Added a unit test for the logic of hiding the main menu vs. context menu items and their interaction.

NOTES:
- Ended up having to reorganize the DesktopForm to use a TableLayoutPanel with the menu strip at the top and the rest below. This is because as the toolbar's visibility changed (and you switched workspaces), the toolbar would magically flip above the main menu, which looks ridiculous. Rather than try to figure out how to hack it to work right, I just did the correct thing, which was to take the menu out of the ToolstripContainer. That way, they menu and toolbar cannot conflict. This also allowed me to remove some code that tried to keep the menu above the toolbar.
- The user must manually remove any separators via Tools/Customize in order to completely hide the menu.
Merge
[Requirement #10244] - Existing functionality should not be broken

- rename "Downtime Mode" to "Downtime Recovery Mode", per sprint review comment
- purely cosmetic.
[Requirement #10416] - The RIS will be integrated into the Team Edition workstation
 * Fixed the icon for the folder system search tool, which was really dithered and otherwise ugly compared to the icons in the rest of the application.
  * It made all screenshots of that screen look bad.
[Requirement #10416] - The RIS will be integrated into the Team Edition workstation
 * Fixed the small icon for the create report with images tool, which had the wrong native size
  * It made user documentation containing that tool icon look weird in a list with other tools' icons.