CDN support

Implemented support for CDN

if cdn_id is specified, it will invalidate objects on CDN.

Implemented fixes as Fog does not support dry run. Also, basic test is implemented.
```ruby
if not self.dry_run? then
```

should become

```
unless dry_run?
```