Add new user needs without saving detailed guide

https://www.pivotaltracker.com/story/show/57899694
Tidy up user needs controller and test
Add validation to UserNeed

Test that the user needs controller responds appropriately
if given invalid data
Validate new user needs for detailed guides

Rather than skipping the new user need fields if any of them are
blank, skip only if all the fields are blank and show validation
errors when anything has been filled in.
Merge pull request #914 from alphagov/57899694-add-multiple-user-needs

Add new user needs without saving detailed guide

https://www.pivotaltracker.com/story/show/57899694