Move RecordableCommands to DynamoCore

The Dynamo should be able to execute RecordableCommands in headless mode (when there is no WPF form). Thats why they should be in nonUI part of core - DynamoCore. Also their Execute method implementation should be based on DynamoModel rather than DynamoViewModel, so RecordableCommands are UI independent

This PR contains a lot of changes but most of them are minor: DynCmd.SomeCommand -> SomeCommand, DynamoViewModel.SomeCommand -> SomeCommand
This property will be used in DynamoWebServer to have no problems with `ObservableCollection`. It is set during creation so we can execute `RecordableCommands` in required thread using this property