Halladay cruises, Phillies beat Pirates 1-0