`change_args` record should be part of the couch_changes app
filter fields in included doc when returned from a _changes

With this changes you can only return a specified list of fields in the
included docs by passing the list of them to an optionnal `fields`
parameter. For now nested fields are ignored.

    $ curl -XPUT localhost:5984/testdb
    {"ok":true}
    $ curl -XPUT localhost:5984/testdb/test -d'{"f1": 1, "f2": 2, "f3":
3}'
    {"ok":true,"id":"test","rev":"1-2b23983c05a9ca8015b6ea7bdc1b3478"}
    $ curl -XPUT localhost:5984/testdb/test1 -d'{"f1": 1, "f2": 4, "f3":
3}'
    {"ok":true,"id":"test1","rev":"1-2942771a428c4b45315710db0b6aaa7a"}
    $ curl -XPUT localhost:5984/testdb/test2 -d'{"f1": 1, "f2": 7, "f3":
8}'
    {"ok":true,"id":"test2","rev":"1-ac4cd62a83a0a98421e9ed74adcadcc3"}
    $ curl "http://localhost:5984/testdb/_changes?include_docs=true"
    {"results":[
    {"seq":1,"id":"test","changes":[{"rev":"1-2b23983c05a9ca8015b6ea7bdc1b3478"}],"doc":{"_id":"test","_rev":"1-2b23983c05a9ca8015b6ea7bdc1b3478","f1":1,"f2":2,"f3":3}},
    {"seq":2,"id":"test1","changes":[{"rev":"1-2942771a428c4b45315710db0b6aaa7a"}],"doc":{"_id":"test1","_rev":"1-2942771a428c4b45315710db0b6aaa7a","f1":1,"f2":4,"f3":3}},
    {"seq":3,"id":"test2","changes":[{"rev":"1-ac4cd62a83a0a98421e9ed74adcadcc3"}],"doc":{"_id":"test2","_rev":"1-ac4cd62a83a0a98421e9ed74adcadcc3","f1":1,"f2":7,"f3":8}}
    ],
    "last_seq":3}
    $ curl
'http://localhost:5984/testdb/_changes?include_docs=true&fields=\["f1"\]'
    {"results":[
    {"seq":1,"id":"test","changes":[{"rev":"1-2b23983c05a9ca8015b6ea7bdc1b3478"}],"doc":{"_id":"test","_rev":"1-2b23983c05a9ca8015b6ea7bdc1b3478","f1":1}},
    {"seq":2,"id":"test1","changes":[{"rev":"1-2942771a428c4b45315710db0b6aaa7a"}],"doc":{"_id":"test1","_rev":"1-2942771a428c4b45315710db0b6aaa7a","f1":1}},
    {"seq":3,"id":"test2","changes":[{"rev":"1-ac4cd62a83a0a98421e9ed74adcadcc3"}],"doc":{"_id":"test2","_rev":"1-ac4cd62a83a0a98421e9ed74adcadcc3","f1":1}}
    ],
    "last_seq":3}

    $ curl
'http://localhost:5984/testdb/_changes?include_docs=true&fields=\["f1","f2"\]'
    {"results":[
    {"seq":1,"id":"test","changes":[{"rev":"1-2b23983c05a9ca8015b6ea7bdc1b3478"}],"doc":{"_id":"test","_rev":"1-2b23983c05a9ca8015b6ea7bdc1b3478","f1":1,"f2":2}},
    {"seq":2,"id":"test1","changes":[{"rev":"1-2942771a428c4b45315710db0b6aaa7a"}],"doc":{"_id":"test1","_rev":"1-2942771a428c4b45315710db0b6aaa7a","f1":1,"f2":4}},
    {"seq":3,"id":"test2","changes":[{"rev":"1-ac4cd62a83a0a98421e9ed74adcadcc3"}],"doc":{"_id":"test2","_rev":"1-ac4cd62a83a0a98421e9ed74adcadcc3","f1":1,"f2":7}}
    ],
    "last_seq":3}

Conflicts:

	apps/couch_changes/src/couch_changes.erl
add a test for changes eventsource feed.
fix whitespaces
make sure the changes test works on all browsers
make sure default headers are defaults
all should be compile & deps.
vhosts values should not be empty.

A vhost value can be empty when removed with the couch_config module.
support system dbs. close #9 .

Systems databases are databases only available and visible by admins.
All systems databases are prefixed by `rc_` .

Ex:

    $ curl -XPUT http://127.0.0.1:5984/rc_somesystemdb
    {"error":"unauthorized","reason":"You are not a server admin."}
    $ curl -XPUT http://admin:test@127.0.0.1:5984/rc_somesystemdb
    {"ok":true}
    $ curl http://admin:test@127.0.0.1:5984/_all_dbs
    ["_replicator","_users","rc_somesystemdb"]
    $ curl http://127.0.0.1:5984/_all_dbs
    ["_replicator","_users"]
    $ curl -XPUT http://admin:test@127.0.0.1:5984/rc_somesystemdb -d'{}'
    {"error":"file_exists","reason":"The database could not be created,
the file already exists."}
    $ curl -XPUT http://admin:test@127.0.0.1:5984/rc_somesystemdb/test
-d'{}'
    {"ok":true,"id":"test","rev":"1-967a00dff5e02add41819138abb3284d"}
    $ curl -XPUT http://127.0.0.1:5984/rc_somesystemdb/test1
-d'{}'{"error":"unauthorized","reason":"You are not authorized to access
this db."}
    $ curl
http://127.0.0.1:5984/rc_somesystemdb/_all_docs{"error":"unauthorized","reason":"You
are not authorized to access this db."}
    $ curl http://admin:test@127.0.0.1:5984/rc_somesystemdb/_all_docs
    {"total_rows":1,"offset":0,"rows":[
    {"id":"test","key":"test","value":{"rev":"1-967a00dff5e02add41819138abb3284d"}}
    ]}
extract couch_stats in its own app.

couch_stats is now a full erlang application booted at startup. Other
changes are a better reinitialization of settings. Instead of exiting
the gen_server, we just load new settings and overwrite older.
make sure we keep the prib directory.
don't use the ini to load couch_uuids.

This module is always needed, there is no need to keep it in the
configuration file.
couch_stats is already loaded.
Merge branch 'master' into view_changes

Conflicts:
	apps/couch_changes/include/couch_changes.hrl
	apps/couch_changes/src/couch_changes.erl
	apps/couch_changes/src/couch_httpd_changes.erl
	apps/couch_replicator/src/couch_replicator_api_wrap.erl