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
to avoid a lot of code rows like
```csharp
if (command is SomeCommand)
                SomeCommandImpl((SomeCommand)command);
else
```
I renamed all Impl methods with common name and now it's dynamicly defines RecordableCommand type and chooses apropriate method