Use an incrementing integer as the need ID
Return Need IDs as a number and not a URL
Start need IDs at 100001

- This means that need IDs will be a 6-digit identifier
for the forseeable future.
- This avoids conflicting IDs with those from the
Need-o-Tron.
Fix a couple of functional tests

These were looking for the need ID as a URL
Downgrade Mongoid to 2.8.1

Mongoid 3.0.x does not return MongoDB errors when
inserting a row breaking a uniqueness constraint.
This results in nasty behaviour in the model because
it acts as though it has been persisted when it
actually hasn't.

There doesn't seem to be an easy fix due to the way
Moped makes requests to MongoDB, so let's bite the
bullet and downgrade to Mongoid 2.x.

This involves modifications to config/mongoid.yml,
changes to how we override the IDs in both the
Organisation and Need models, and a change to the
validation of organisation IDs for a Need.

There's also a test for the Need ID uniqueness
behaviour to assert that an exception is raised.
Remove view context from presenters

The view context in presenters is no longer required
as we aren't rendering any URLs in the API responses
Use the need_id as the value for the id field in responses
Assign the need ID before validation

This was being called after the Mongoid callback to
set the record ID, so the record ID would be a
BSON id and not the need ID.
Merge pull request #5 from alphagov/use-numeric-need-ids

Move to numeric need IDs