Warwickshire candidate

Rebased against master and squashed, hopefully readably.

Note that most of the Open311::Endpoint stuff is not actively deployed on FMS server (e.g. is for the shim scripts on client) but there are a few tweaks to e.g. PopulateServiceList too.
The WSDL issue is definitely a problem, hence me raising it separately from the others - fixmystreet.com requires this in order to perform one of its integrations. I've just run `carton install` on an empty local on firefly, and it has put back the SOAP::WSDL modules, but then also removed CPAN::Meta::YAML, JSON::PP, and added MIME::Lite, hmm...

The issue is if it is run on a system where there's a slightly different installation of core perl modules, or a differing version of perl - carton is not set up to cope great with that. So it ends up missing a required module (that was present when run on Debian wheezy). For example, on the Ubuntu precise install I have here, it doesn't have modules such as Perl::OSType, Sub::Identify or Module::Metadata, but does have IO::Compress, ExtUtils::CBuilder etc. So we really want to not drop a module from the snapshot, in case something uses it somewhere (and even now I can't be sure we've got it all there). The easiest thing to do is probably tweak the snapshot after it's generated to put back anything removed, so it's only the additions caused by the new modules.