Hurricane Irma howled past Puerto Rico after thrashing several smaller Caribbean islands with roof-ripping winds, drenching rains and pounding surf on a collision course with Florida.