Gratings redo

After feedback from @aarvai in #8, did an overhaul of the way grating motions are detected and stored.  Now there is just one `GratingMove` class with `grating` and `direction` properties (along with 4 others that give detailed start/stop angle values).

This also includes code used to validate the results against the table maintained by SOT MTA.