New DataGridCellHelper

after some playing with the `DataGrid` i saw this on my output window after editong a cell...

```
System.Windows.Data Error: 4 : Cannot find source for binding with reference 'RelativeSource FindAncestor, AncestorType='System.Windows.Controls.DataGrid', AncestorLevel='1''.
BindingExpression:Path=SelectionUnit; DataItem=null; target element is 'DataGridCell' (Name=''); target property is 'NoTarget' (type 'Object')
```

some triggers fires this error at the `SelectionUnit` condition

```xml
<MultiDataTrigger>
    <MultiDataTrigger.Conditions>
        <Condition Binding="{Binding Path=IsSelected, RelativeSource={RelativeSource Self}}"
                   Value="True" />
        <Condition Binding="{Binding Path=IsSelected, RelativeSource={RelativeSource AncestorType={x:Type DataGridRow}}}"
                   Value="False" />
        <Condition Binding="{Binding Path=SelectionUnit, RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"
                   Value="CellOrRowHeader" />
    </MultiDataTrigger.Conditions>
    <Setter Property="Background"
            Value="{DynamicResource AccentColorBrush}" />
</MultiDataTrigger>
```

so how can we get the DataGrid and fix this?

this  pr adds a new helper class only for the `DataGridCell` to enable getting the DataGrid and work with it.

now it's possible to say

```xml
<Setter Property="Controls:DataGridCellHelper.SaveDataGrid"
        Value="True" />

...

<MultiDataTrigger>
    <MultiDataTrigger.Conditions>
        <Condition Binding="{Binding Path=IsSelected, RelativeSource={RelativeSource Self}}"
                   Value="True" />
        <Condition Binding="{Binding Path=IsSelected, RelativeSource={RelativeSource AncestorType={x:Type DataGridRow}}}"
                   Value="False" />
        <Condition Binding="{Binding Path=(Controls:DataGridCellHelper.DataGrid).SelectionUnit, RelativeSource={RelativeSource Self}}"
                   Value="CellOrRowHeader" />
    </MultiDataTrigger.Conditions>
    <Setter Property="Background"
            Value="{DynamicResource AccentColorBrush}" />
</MultiDataTrigger>

...
```