Don't fail on empty YAML config

It should be valid for a config file to be present but empty, for example when
all defined options have default values.

`yaml.load` returns `None` if the file is empty, but staticconf expects an
iterable. This fix returns `{}` if `yaml.load` would return `None`.
Merge pull request #23 from patricklucas/allow_empty_yaml

Don't fail on empty YAML config