Add support for authority-bounded place lookups

This adds the ability to specify that a service should return places in the same local authority as the given postcode, as opposed to the geographically nearest places.  This is required for some services where you have to use the place corresponding to your council, even if it's further away (eg register offices).

https://www.agileplannerapp.com/boards/173808/cards/6033
you're right, i read it wrong.. was too focussed on `areas.select`. sorry about that. it seems `.detect` will return what you want using `select {}.first`, but in an optimal way.