Note that this changes ExplicitArraysFluidState to take a run-time argument for the number of phases.