The vent model is one large antipattern and needs to be redesigned.
- Remove a majority of getters/setters and use a configuration struct. If we really need to protect against mid-sim changes to the vent configuration we can still do that.
- The update and initialize functions need to be public. It shouldn't be mandatory to use the vent set.
- Rather than yelling at the user that a simple vent doesn't have an exhaust rate, just don't give simple vents that interface.
The vent model is one large antipattern and needs to be redesigned.