'Warm Bodies' tops US box office