A Multiple Shooting Algorithm for Direct Solution of Optimal Control Problems