User account edition

O branch em que desenvolvi a página de edição de conta e acrescentei o username ao user.
O método para edição do username tem para lá umas coisas que se calhar não estão muito bem, embora esteja a funcionar, tive dificuldade para fazer um formulário que só editasse o username. Estão à vontade para dar sugestões mais elegantes.
Alguma ideia porque é que isto faz com que os testes falhem com:
Failure/Error: Unable to find matching line from backtrace
     SystemStackError:
       stack level too deep
     # ./app/models/user.rb:11