Add Unit Test for WindowDataLayer

This PR provides a unit test for WindowDataLayer.

The purpose of this unit test is to protect against issues while the data layer design is improved (such as #1089 and #1125).
I'm talking about all the below code in load_window_data_and_label to parse the window data file (and possibly other things) -- this code is duplicated from the WindowDataLayer SetUp method, which partially defeats the purpose of the unit test.  For example, if I make a pull request that breaks WindowDataLayer SetUp, these tests will still pass because you've duplicated the SetUp code here.