Add failing acceptance test for editing a court with non-geocodable postcode
Extract Court#visiting_postcode
Implement Court#visiting_postcode_changed?
Only geocode when visiting postcode changes
Add another acceptance test to check that postcode is used when it changes
Add a third acceptance test to check that the postcode can be changed if it can be geocoded
Clean up postcode geocoding acceptance tests
Fix CourtsController spec

Some of the examples in this spec assume that courts have no latitude or
longitude, but the default factory provides dummy ones, which are no
longer getting erased during validation (because now they are only
updated when the visiting postcode changes).

The easiest way to placate these examples is just to remove the fake
lat/long where necessary.
Check for lat/long using #present?, not attribute predicates

The #latitude? and #longitude? methods will return false if the
attribute's value is zero, which isn't what we want here, because zero
is a legitimate lat/long.
Merge pull request #217 from ministryofjustice/only-update-location-when-postcode-changes

Only update location when postcode changes