some general changes to use an interface similar to that observed in em-pyclaw_2d