Easier plugable formats and remove ini format

Ref #123 and #129 

This is some minor changes to how custom formats is handled. The biggest feature is that it can detect the correct format by looking at the file extension.

Also removes the ini format. Users should do:
```js
nconf.formats.ini = require('ini')
```
or
```js
nconf.formats.yaml = require('nconf-yaml')
```
Ok, do you want a deprecation warning when somebody is using it?

Also, do we need to add `jsonSpacing`. Is not `formatOptions.spacing` good enough?