Add support for multiple location blocks and added a few other options

This pull request adds the following features:

- Multiple location block support
- Option for `gzip_static`, `expires`, and `add_header` for location blocks.
- Update README
`add_header` can be added multiple times. You can merge this in just make an issue about this. The "AddHeaders" class will look the same as `SetHeaders`