Slider updates.

This PR re-implements updates to sliders originally implemented in #3452. This functionality was later removed to make #3472 build.

The DynamoSlider class, originally implemented in DynamoCoreWPF, was updated during #3472 to take an undo recorder as one of the parameters to its constructor. This undo recorder is utilized during slider drag events to record slider values for undo. This no longer works as the DynamoSlider is now created as part of the node view customization, which has no access to the workspace model. This logic has been partially moved to the model, and an internal task to finish the last recording step has been added [here](http://adsk-oss.myjetbrains.com/youtrack/issue/MAGN-5726).

PTAL:
- [ ] @lukechurch 
The base classes for sliders, Double and Integer, inherit from BasicInteractive<T> already. These base classes maintain the Value property and the serialization logic for the value. For sliders, we only need to add the notion that, in addition to a Value property we need Minimum, Maximum, and Step properties as well. 

I did originally implement a base class called SliderBase, but because our double and integer classes already have their type defined, I would have to inherit instead from BasicInteractive<T>, and in so doing, would lose the logic we already have for properly serializing and deserializing int and double values. 

I'll reinvestigate to see if this can be improved.