Allow ignorables to be configured in snow.config

I wanted more control over ignoring certain files and folders in my blog repo, e.g. the readme.md. I didn't much like the recommended way of specifying a directory to copy stuff into the root from, and that also seemed a little unwieldy to me, as opposed to being able to explicitly specify in a config file "don't this delete this file, man".

### I have
Removed all hard coded ignore strings from IoExtensions.cs, in favour of allowing a user configurable section of snow.config to be the source of ignores.

- Removed static hard coded string arrays
- Added a func factory to Empty() which defaults to null.
- Extended snow settings with ignorables property.

## Still to do
- [ ] Update sample snow.config in 'snowsite'
- [ ] Update wiki with new documentation

## Example snow.config
```
# somewhere in snow.config
  "ignorables": [
    "cname",
    "compile.snow.bat",
    "snow.config",
    ".nojekyll",
    ".gitignore",
    ".deployment",
    ".git",
    ".svn",
    "svn",
    "snow",
    "readme.md"
  ]

```