Government pledge to end mental health treatment gap by 2020 will actually take a 'generation' to achieve, health secretary admits