Probably all of the contents of `demand.rs` could be split between `commodity.rs` and `input/commodity/demand.rs`. ~~On hold until #276 is merged.~~