Data subset

Covers https://github.com/KSHSK/WAVED/issues/159 and https://github.com/KSHSK/WAVED/issues/246

To test:
* Obviously, functionality of Data Subsets.
* Any area of the UI that involves DataSet, DataSubset, or binding data. A lot of this has changed.

Reminder, targeted state coloring cannot be done with Data Subsets.