UI, Placement, and Data Model updates
This PR has a bunch of updates in it; sorry for the complexity, it's mostly because Ashley and I realized we had to synchronize our own work, since the UI depends on the data model so much. So this PR has Ashley's redesign of the data model as well as my UI updates.
This PR adds 5 key features:
- Supports placement of flyers hanging from the ceiling pipes
- Adds a mixer for the channels/patterns in the Engine
- Updates the data model
- Shows flyer wing movement/position
- Draws stairwell and pipes in Packard
It also starts to add documentation for the PDE code.
My two major remaining to do items:
- Finish UI elements: support record/replay and pattern selection
- Support placing flyers on stairwell