ShadowP4: Building and Testing Modular Programs