We've decided on the 4tronix RoboHAT for both the motor control and to supply the power to the Raspberry Pi from a single power source.
It also exposes GPIO pins as inputs and outputs using 5V - rather than the 3.3V of the Pi.
Full details of the pin mapping is available on the 4tronix blog
The motor driver library they provide gives various functions for co-ordinating the motors to turn a robot - but it will be easier when mapping from a joystick or for autonomous control to drive each motor output independantly.
Each motor uses 2 fixed PWM pins - the duty cycle of each mapping to a forward or reverse speed, so it looks pretty easy to control.