Add Support to mimic CDN providers

This PR adds support to mimic CDN provider API calls. While this might not fit in the scope of Mimic (since this does not mock Openstack endpoints, but is aimed at mocking Fastly API calls), the intent of this PR is to get feedback on if this is the right approach. If this turns out to fit into the Mimic context & can be merged, I can clean up this PR & add tests.
That only matters if you're assigning to the name, which you aren't doing. You can still refer to names in enclosing scopes (in this case: module scope) and do things to them; including set items on them. 

When it comes to assigning values to names, Python has three rules:

- The default, in which names are assigned in the current scope.
- `nonlocal` in Python 3, where names are assigned in the scope in which they're already bound.
- `global`, where names are bound in global (a.k.a. module) scope.

I don't know if @lekhajee was additionally suggesting that this global state should probably be turned into local state. I generally agree, but I don't know enough about Mimic to make a concrete suggestion there.