1. Implemented "WorkspaceModel.SendModelEvent" method to record model for undo and forward the call
2. Introduced "ModelBase.HandleModelEvent/HandleModelEventCore" methods
3. Updated "DynamoNodeButton" to send "DynCmd.ModelEventCommand" if it was created with an event name