Add support for OpenCage geocoder

OpenCage is a relatively new geocoder that supports both direct and reverse geocoding.
For more information, visit http://geocoder.opencagedata.com
Please move this test into `test.test_backends` and use existing helpers to read API keys from the environment or disk.