Remove old trailing symlinks

From a previous world of asset management
Set up cucumber

About to embark on a big refactoring, it's probably best to get some test coverage in here.
Remove slimmer

It's causing problems in tests and we should be moving towards bootstrap anyway.
Add govuk_content_models dependency

This lets us use some of the standard factories in tests. Over time it'll let us remove some other code and we'll move imminence models into it.
Add basic support and initial cucumber stories (WIP)
Make setting data set version setting more robust

This was sometimes failing if relations hadn't been properly initialised. More careful checks help us here.
Database config for cucumber
Complete first set of service/data set stories

Gives us basic integration tests for creating services, uploading data sets, and activating data sets
Basic API/export coverage in cucumber

Note that running these tests will currently hit mapit 3*174 times. We need to allow the import to recognise lng/lat to avoid that.
Allow lng/lat to be set from imported CSV

This significantly reduces our dependency on external geocoders, which is particularly helpful in testing.

It's a bit ugly because of the way mongoid handles before_save callbacks - they'll be called at only one layer of the documents so we need a callback at each layer depending on how the documents are being created. We can clean this up soon.
Extract CSV rendering from DataSet object into presenter

Before making substantial changes to the models let's remove one of the concerns.

There's still some ugly coupling between models, the presenter, the renderer and the controller, but this is at least a little clearer.
Pull Place out as standalone object

This commit changes quite a bit to support the extraction of Place. There's some ugliness in that I'm using an after_save callback to stage processing of imported CSV files, but that gets the job done while ensuring appropriate relationships can be set up.
Add supporting file for most recent cucumber feature
Use mongo's built in geoindexing to find places

Rather than hand-rolled code that needed to load the entire data set into memory.
Set up database_cleaner for tests

We weren't cleaning out the database between test cases which causes all kinds of nasty behaviour.
Automatically create mongo indexes in test

This means not having to run a rake task after each index change. On the one hand, the manual step is a good reminder that we will have to run that task when deploying to production. On the other it was slowing down development quite a bit. We should probably build the index creation task into deployments.
Refactor places controller to tidy up code. Move some logic to model.

Main aim here was to make the controller methods more succinct. I added some tests (which are really integration tests as they're testing our integration with the database, but can live here for now) and moved some of the logic into a scope on the Place model.

I'm not sure that the calculations to make distances work in the expected units work. I'll be testing that next.
Add more indexing on place and make sure the reconcile_location callback is triggered.

These had been missed from previous commits.
Simplify jenkins.sh and make sure it runs all our tests
Update simplecov and hook it in to tests