Separate the present and as_json methods in NeedPresenter

This allows other presenters to use the output of
NeedPresenter to build up their responses.

The existing unit tests continue to pass with this
change.
Add a NeedResultSetPresenter

This presenter will render a collection of needs
using NeedPresenter objects.
Return collection of needs in an API response

Return a JSON response containing all the needs in
the API at the /needs endpoint
Remove superfluous method argument in NeedPresenter
Set cache-control headers to zero for requests for all needs

This prevents the problem of a need being created but not appearing
in the need list in Maslow due to the API response being cached
Merge branch 'master' into list-needs
Merge pull request #2 from alphagov/list-needs

Return all the needs in the Need API in a JSON response