Prime Minister David Cameron has set out his vision for welfare.