Making an immutable vs mutable implementation of warehouse.